File: imagesavealpha.xml

package info (click to toggle)
php-doc 20250827~git.abe740d%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 71,968 kB
  • sloc: xml: 985,760; php: 25,504; javascript: 671; sh: 177; makefile: 37
file content (136 lines) | stat: -rw-r--r-- 3,621 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="function.imagesavealpha" xmlns="http://docbook.org/ns/docbook">
 <refnamediv>
  <refname>imagesavealpha</refname>
  <refpurpose>Whether to retain full alpha channel information when saving images</refpurpose>
 </refnamediv>

 <refsect1 role="description">
  &reftitle.description;
  <methodsynopsis>
   <type>bool</type><methodname>imagesavealpha</methodname>
   <methodparam><type>GdImage</type><parameter>image</parameter></methodparam>
   <methodparam><type>bool</type><parameter>enable</parameter></methodparam>
  </methodsynopsis>
  <para>
   <function>imagesavealpha</function> sets the flag which determines whether to retain
   full alpha channel information (as opposed to single-color transparency)
   when saving images.
   This is only supported for image formats which support full alpha channel information,
   i.e. <literal>PNG</literal>, <literal>WebP</literal> and <literal>AVIF</literal>.
   <note>
    <simpara>
     <function>imagesavealpha</function> is only meaningful for <literal>PNG</literal>
     images, since the full alpha channel is always saved for <literal>WebP</literal>
     and <literal>AVIF</literal>. It is not recommended to rely on this behavior,
     as it may change in the future. Thus, <function>imagesavealpha</function>
     should be called deliberately also for <literal>WebP</literal> and
     <literal>AVIF</literal> images.
    </simpara>
   </note>
  </para>
  <para>
   Alphablending has to be disabled (<code>imagealphablending($im, false)</code>)
   to retain the alpha-channel in the first place.
  </para>
 </refsect1>

 <refsect1 role="parameters">
  &reftitle.parameters;
  <para>
   <variablelist>
    &gd.image.description;
    <varlistentry>
     <term><parameter>enable</parameter></term>
     <listitem>
      <para>
       Whether to save the alpha channel or not. Defaults to &false;. 
      </para>
     </listitem>
    </varlistentry>
   </variablelist>
  </para>
 </refsect1>

 <refsect1 role="returnvalues">
  &reftitle.returnvalues;
  <para>
   &return.success;
  </para>
 </refsect1>

 <refsect1 role="changelog">
  &reftitle.changelog;
  <informaltable>
   <tgroup cols="2">
    <thead>
     <row>
      <entry>&Version;</entry>
      <entry>&Description;</entry>
     </row>
    </thead>
    <tbody>
     &gd.changelog.image-param;
    </tbody>
   </tgroup>
  </informaltable>
 </refsect1>

 <refsect1 role="examples">
  &reftitle.examples;
  <para>
   <example>
    <title>Basic <function>imagesavealpha</function> Usage</title>
    <programlisting role="php">
<![CDATA[
<?php
// Load a png image with alpha channel
$png = imagecreatefrompng('./alphachannel_example.png');

// Turn off alpha blending
imagealphablending($png, false);

// Do desired operations

// Set alpha flag
imagesavealpha($png, true);

// Output image to browser
header('Content-Type: image/png');

imagepng($png);
?>
]]>
    </programlisting>
   </example>
  </para>
 </refsect1>

 <refsect1 role="seealso">
  &reftitle.seealso;
  <simplelist>
   <member><function>imagealphablending</function></member>
  </simplelist>
 </refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->