dams Tue Apr 17 07:03:36 2001 EDT
Modified files:
/phpdoc/en/functions image.xml
Log:
Fixed some typos.One double paragraph removed.
Index: phpdoc/en/functions/image.xml
diff -u phpdoc/en/functions/image.xml:1.35 phpdoc/en/functions/image.xml:1.36
--- phpdoc/en/functions/image.xml:1.35 Sun Apr 15 06:24:31 2001
+++ phpdoc/en/functions/image.xml Tue Apr 17 07:03:35 2001
@@ -1,1050 +1,1048 @@
- <reference id="ref.image">
- <title>Image functions</title>
- <titleabbrev>Graphics</titleabbrev>
-
- <partintro>
- <simpara>
- You can use the image functions in PHP to get the size of
- <acronym>JPEG</acronym>, <acronym>GIF</acronym>,
- <acronym>PNG</acronym>, and <acronym>SWF</acronym> images, and if
- you have the <acronym>GD</acronym> library (available at <ulink
- url="&url.gd;">&url.gd;</ulink>) you will also be able to create
- and manipulate images.
- </simpara>
- <simpara>
- The format of images you are able to manipulate depend on the
- version of gd you install, and any other libraries gd might need
- to access those image formats. Versions of gd older than gd-1.6
- support gif format images, and do not support png, where versions
- greater than gd-1.6 support png, not gif.
- </simpara>
- <simpara>
- In order to read and write images in jpeg format, you will need to
- obtain and install jpeg-6b (available at
- <ulink url="&url.jpeg;">&url.jpeg;</ulink>), and then recompile gd to
- make use of jpeg-6b. You will also have to compile PHP with
- <option role="configure">--with-jpeg-dir=/path/to/jpeg-6b</option>.
- </simpara>
- <simpara>
- To add support for Type 1 fonts, you can install t1lib (available
- at <ulink url="&url.t1lib;">&url.t1lib;</ulink>), and then add
- <option role="configure">--with-t1lib[=dir]</option>.
- </simpara>
- </partintro>
-
- <refentry id="function.getimagesize">
- <refnamediv>
- <refname>GetImageSize</refname>
- <refpurpose>Get the size of a GIF, JPEG, PNG or SWF image</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>array <function>getimagesize</function></funcdef>
- <paramdef>string <parameter>filename</parameter></paramdef>
- <paramdef>array
- <parameter><optional>imageinfo</optional></parameter>
- </paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- The <function>GetImageSize</function> function will determine the
- size of any <acronym>GIF</acronym>, <acronym>JPG</acronym>,
- <acronym>PNG</acronym> or <acronym>SWF</acronym> image file and
- return the dimensions along with the file type and a height/width
- text string to be used inside a normal <acronym>HTML</acronym>
- <sgmltag>IMG</sgmltag> tag.
- </para>
- <para>
- Returns an array with 4 elements. Index 0 contains the width of
- the image in pixels. Index 1 contains the height. Index 2 a
- flag indicating the type of the image. 1 = GIF, 2 = JPG, 3 =
- PNG, 4 = SWF. Index 3 is a text string with the correct
- "height=xxx width=xxx" string that can be used directly in an IMG
- tag.
- <example>
- <title>GetImageSize (file)</title>
- <programlisting role="php">
-<?php $size = GetImageSize ("img/flag.jpg"); ?>
-<IMG SRC="img/flag.jpg" <?php echo $size[3]; ?>
- </programlisting>
- </example>
- </para>
- <para>
- <example>
- <title>GetImageSize (URL)</title>
- <programlisting role="php">
-<?php $size = GetImageSize ("http://www.php.net/gifs/logo.gif"); ?>
- </programlisting>
- </example>
- </para>
- <para>
- The optional <parameter>imageinfo</parameter> parameter allows
- you to extract some extended information from the image
- file. Currently this will return the diffrent
- <acronym>JPG</acronym> APP markers in an associative Array. Some
- Programs use these APP markers to embedd text information in
- images. A very common one in to embed <acronym>IPTC</acronym>
- <ulink url="&url.iptc;">&url.iptc;</ulink> information in the
- APP13 marker. You can use the <function>iptcparse</function>
- function to parse the binary APP13 marker into something
- readable.
- <example>
- <title>GetImageSize returning IPTC</title>
- <programlisting>
-<?php
- $size = GetImageSize ("testimg.jpg",&$info);
- if (isset ($info["APP13"])) {
- $iptc = iptcparse ($info["APP13"]);
- var_dump ($iptc);
- }
-?>
- </programlisting>
- </example>
- <note>
- <simpara>
- This function does not require the GD image library.
- </simpara>
- </note>
- <note>
- <simpara>
- URL support was added in PHP 4.0.5
- </simpara>
- </note>
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagealphablending">
- <refnamediv>
- <refname>ImageAlphaBlending</refname>
- <refpurpose>Set the blending mode for an image</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagealphablending</function></funcdef>
- <paramdef>resource <parameter>im</parameter></paramdef>
- <paramdef>bool <parameter>blendmode</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- <function>ImageAlphaBlending</function> allows for two different
- modes of drawing on truecolor images. In blending mode, the
- alpha channel component of the color supplied to all drawing function,
- such as <function>ImageSetPixel</function> determines how much of the
- underlying color shouldbe allowed to shine through. As a result, gd
- automatically blends the existing color at that point with the drawing color,
- and stores the result in the image. The resulting pixel is opaque. In
- non-blending mode, the drawing color is copied literally with its alpha
channel
- information, replacing the destination pixel. Blending mode is not available
- when drawing on palette images.
- If <parameter>blendmode</parameter> is true, then blending mode is enabled,
otherwise
- disabled.
- </para>
- <note><para>This function was added in PHP 4.0.6 and requires GD
2.0.1</para></note>
- </refsect1>
- </refentry>
-
-
- <refentry id="function.imagearc">
- <refnamediv>
- <refname>ImageArc</refname>
- <refpurpose>Draw a partial ellipse</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagearc</function></funcdef>
- <paramdef>int <parameter>im</parameter></paramdef>
- <paramdef>int <parameter>cx</parameter></paramdef>
- <paramdef>int <parameter>cy</parameter></paramdef>
- <paramdef>int <parameter>w</parameter></paramdef>
- <paramdef>int <parameter>h</parameter></paramdef>
- <paramdef>int <parameter>s</parameter></paramdef>
- <paramdef>int <parameter>e</parameter></paramdef>
- <paramdef>int <parameter>col</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- <function>ImageArc</function> draws a partial ellipse centered at
- <parameter>cx</parameter>, <parameter>cy</parameter> (top left is
- 0, 0) in the image represented by im. <parameter>W</parameter>
- and <parameter>h</parameter> specifies the ellipse's width and
- height respectively while the start and end points are specified
- in degrees indicated by the <parameter>s</parameter> and
- <parameter>e</parameter>. arguments.
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagefilledarc">
- <refnamediv>
- <refname>ImageArc</refname>
- <refpurpose>Draw a partial ellipse and fill it</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagefilledarc</function></funcdef>
- <paramdef>int <parameter>im</parameter></paramdef>
- <paramdef>int <parameter>cx</parameter></paramdef>
- <paramdef>int <parameter>cy</parameter></paramdef>
- <paramdef>int <parameter>w</parameter></paramdef>
- <paramdef>int <parameter>h</parameter></paramdef>
- <paramdef>int <parameter>s</parameter></paramdef>
- <paramdef>int <parameter>e</parameter></paramdef>
- <paramdef>int <parameter>col</parameter></paramdef>
- <paramdef>int <parameter>style</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- <function>ImageFilledArc</function> draws a partial ellipse centered at
- <parameter>cx</parameter>, <parameter>cy</parameter> (top left is
- 0, 0) in the image represented by im. <parameter>W</parameter>
- and <parameter>h</parameter> specifies the ellipse's width and
- height respectively while the start and end points are specified
- in degrees indicated by the <parameter>s</parameter> and
- <parameter>e</parameter>. arguments.
- <parameter>style</parameter> is a bitwise OR of the following possibilities:
- <orderedlist>
- <listitem><simpara>IMG_ARC_PIE</simpara></listitem>
- <listitem><simpara>IMG_ARC_CHORD</simpara></listitem>
- <listitem><simpara>IMG_ARC_NOFILL</simpara></listitem>
- <listitem><simpara>IMG_ARC_EDGED</simpara></listitem>
- </orderedlist>
- IMG_ARC_PIE and IMG_ARC_CHORD are mutually exclusive; IMG_ARC_CHORD just
- connects the starting and ending angles with a straight line, while
- IMG_ARC_PIE produces a rounded edge. IMG_ARC_NOFILL indicates that the arc
- or chord should be outlined, not filled. IMG_ARC_EDGED, used together with
- IMG_ARC_NOFILL, indicates that the beginning and ending angles should be
- connected to the center - this is a good way to outline (rather than fill)
- a 'pie slice'.
- </para>
- <note><para>This function was added in PHP 4.0.6 and requires GD
2.0.1</para></note>
- </refsect1>
- </refentry>
-
-
-
- <refentry id="function.imageellipse">
- <refnamediv>
- <refname>ImageEllipse</refname>
- <refpurpose>Draw an ellipse</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imageellipse</function></funcdef>
- <paramdef>resource <parameter>im</parameter></paramdef>
- <paramdef>int <parameter>cx</parameter></paramdef>
- <paramdef>int <parameter>cy</parameter></paramdef>
- <paramdef>int <parameter>w</parameter></paramdef>
- <paramdef>int <parameter>h</parameter></paramdef>
- <paramdef>int <parameter>col</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- <function>ImageEllipse</function> draws an ellipse centered at
- <parameter>cx</parameter>, <parameter>cy</parameter> (top left is
- 0, 0) in the image represented by <parameter>im</parameter>.
- <parameter>W</parameter> and <parameter>h</parameter> specifies the
- ellipse's width and height respectively. The color of the ellipse is
- specified by <parameter>color</parameter>.
- </para>
- <note><para>This function was added in PHP 4.0.6 and requires GD 2.0.2 or
later</para></note>
- </refsect1>
- </refentry>
-
-
- <refentry id="function.imagefilledellipse">
- <refnamediv>
- <refname>ImageFilledEllipse</refname>
- <refpurpose>Draw a filled ellipse</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagefilledellipse</function></funcdef>
- <paramdef>resource <parameter>im</parameter></paramdef>
- <paramdef>int <parameter>cx</parameter></paramdef>
- <paramdef>int <parameter>cy</parameter></paramdef>
- <paramdef>int <parameter>w</parameter></paramdef>
- <paramdef>int <parameter>h</parameter></paramdef>
- <paramdef>int <parameter>col</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- <function>ImageFilledEllipse</function> draws an ellipse centered at
- <parameter>cx</parameter>, <parameter>cy</parameter> (top left is
- 0, 0) in the image represented by <parameter>im</parameter>.
- <parameter>W</parameter> and <parameter>h</parameter> specifies the
- ellipse's width and height respectively. The ellipse is filled using
- <parameter>color</parameter>
- </para>
- <note><para>This function was added in PHP 4.0.6 and requires GD 2.0.1 or
later</para></note>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagechar">
- <refnamediv>
- <refname>ImageChar</refname>
- <refpurpose>Draw a character horizontally</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagechar</function></funcdef>
- <paramdef>int <parameter>im</parameter></paramdef>
- <paramdef>int <parameter>font</parameter></paramdef>
- <paramdef>int <parameter>x</parameter></paramdef>
- <paramdef>int <parameter>y</parameter></paramdef>
- <paramdef>string <parameter>c</parameter></paramdef>
- <paramdef>int <parameter>col</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- <function>ImageChar</function> draws the first character of
- <parameter>c</parameter> in the image identified by
- <parameter>id</parameter> with its upper-left at
- <parameter>x</parameter>,<parameter>y</parameter> (top left is 0,
- 0) with the color <parameter>col</parameter>. If font is 1, 2, 3,
- 4 or 5, a built-in font is used (with higher numbers
- corresponding to larger fonts).
- </para>
- <para>
- See also <function>imageloadfont</function>.
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecharup">
- <refnamediv>
- <refname>ImageCharUp</refname>
- <refpurpose>Draw a character vertically</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagecharup</function></funcdef>
- <paramdef>int <parameter>im</parameter></paramdef>
- <paramdef>int <parameter>font</parameter></paramdef>
- <paramdef>int <parameter>x</parameter></paramdef>
- <paramdef>int <parameter>y</parameter></paramdef>
- <paramdef>string <parameter>c</parameter></paramdef>
- <paramdef>int <parameter>col</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- <function>ImageCharUp</function> draws the character
- <parameter>c</parameter> vertically in the image identified by
- <parameter>im</parameter> at coordinates
- <parameter>x</parameter>, <parameter>y</parameter> (top left is
- 0, 0) with the color <parameter>col</parameter>. If font is 1,
- 2, 3, 4 or 5, a built-in font is used.
- </para>
- <para>
- See also <function>imageloadfont</function>.
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecolorallocate">
- <refnamediv>
- <refname>ImageColorAllocate</refname>
- <refpurpose>Allocate a color for an image</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagecolorallocate</function></funcdef>
- <paramdef>int <parameter>im</parameter></paramdef>
- <paramdef>int <parameter>red</parameter></paramdef>
- <paramdef>int <parameter>green</parameter></paramdef>
- <paramdef>int <parameter>blue</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- <function>ImageColorAllocate</function> returns a color
- identifier representing the color composed of the given
- <acronym>RGB</acronym> components. The <parameter>im</parameter>
- argument is the return from the <function>imagecreate</function>
- function. <function>ImageColorAllocate</function> must be called
- to create each color that is to be used in the image represented
- by <parameter>im</parameter>.
- <informalexample>
- <programlisting role="php">
-$white = ImageColorAllocate ($im, 255, 255, 255);
-$black = ImageColorAllocate ($im, 0, 0, 0);
- </programlisting>
- </informalexample>
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecolordeallocate">
- <refnamediv>
- <refname>ImageColorDeAllocate</refname>
- <refpurpose>
- De-allocate a color for an image
- </refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int
- <function>imagecolordeallocate</function>
- </funcdef>
- <paramdef>int
- <parameter>im</parameter>
- </paramdef>
- <paramdef>int
- <parameter>index</parameter>
- </paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- The <function>ImageColorDeAllocate</function> function
- de-allocates a color previously allocated with the
- <function>ImageColorAllocate</function> function.
- <informalexample>
- <programlisting role="php">
-$white = ImageColorAllocate($im, 255, 255, 255);
-ImageColorDeAllocate($im, $white);
- </programlisting>
- </informalexample>
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecolorat">
- <refnamediv>
- <refname>ImageColorAt</refname>
- <refpurpose>Get the index of the color of a pixel</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagecolorat</function></funcdef>
- <paramdef>int <parameter>im</parameter></paramdef>
- <paramdef>int <parameter>x</parameter></paramdef>
- <paramdef>int <parameter>y</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- Returns the index of the color of the pixel at the
- specified location in the image.
- </para>
- <para>
- See also <function>imagecolorset</function> and
- <function>imagecolorsforindex</function>.
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecolorclosest">
- <refnamediv>
- <refname>ImageColorClosest</refname>
- <refpurpose>
- Get the index of the closest color to the specified color
- </refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagecolorclosest</function></funcdef>
- <paramdef>int <parameter>im</parameter></paramdef>
- <paramdef>int <parameter>red</parameter></paramdef>
- <paramdef>int <parameter>green</parameter></paramdef>
- <paramdef>int <parameter>blue</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- Returns the index of the color in the palette of the image which
- is "closest" to the specified <acronym>RGB</acronym> value.
- </para>
- <para>
- The "distance" between the desired color and each color in the
- palette is calculated as if the <acronym>RGB</acronym> values
- represented points in three-dimensional space.
- </para>
- <para>
- See also <function>imagecolorexact</function>.
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecolorclosestalpha">
- <refnamediv>
- <refname>ImageColorClosestAlpha</refname>
- <refpurpose>
- Get the index of the closest color to the specified color + alpha
- </refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagecolorclosestalpha</function></funcdef>
- <paramdef>resource <parameter>im</parameter></paramdef>
- <paramdef>int <parameter>red</parameter></paramdef>
- <paramdef>int <parameter>green</parameter></paramdef>
- <paramdef>int <parameter>blue</parameter></paramdef>
- <paramdef>int <parameter>alpha</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- Returns the index of the color in the palette of the image which
- is "closest" to the specified <acronym>RGB</acronym> value and
<parameter>alpha</parameter> level.
- </para>
- <para>
- See also <function>imagecolorexactalpha</function>.
- </para>
- <note><para>This function was added in PHP 4.0.6 and requires GD
2.0.1</para></note>
- </refsect1>
- </refentry>
-
-
-
- <refentry id="function.imagecolorexact">
- <refnamediv>
- <refname>ImageColorExact</refname>
- <refpurpose>Get the index of the specified color</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagecolorexact</function></funcdef>
- <paramdef>int <parameter>im</parameter></paramdef>
- <paramdef>int <parameter>red</parameter></paramdef>
- <paramdef>int <parameter>green</parameter></paramdef>
- <paramdef>int <parameter>blue</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- Returns the index of the specified color in the palette of the
- image.
- </para>
- <para>
- If the color does not exist in the image's palette, -1 is
- returned.
- </para>
- <para>
- See also <function>imagecolorclosest</function>.
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecolorexactalpha">
- <refnamediv>
- <refname>ImageColorExactAlpha</refname>
- <refpurpose>Get the index of the specified color + alpha</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagecolorexactalpha</function></funcdef>
- <paramdef>resource <parameter>im</parameter></paramdef>
- <paramdef>int <parameter>red</parameter></paramdef>
- <paramdef>int <parameter>green</parameter></paramdef>
- <paramdef>int <parameter>blue</parameter></paramdef>
- <paramdef>int <parameter>alpha</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- Returns the index of the specified color+alpha in the palette of the
- image.
- </para>
- <para>
- If the color does not exist in the image's palette, -1 is
- returned.
- </para>
- <para>
- See also <function>imagecolorclosestalpha</function>.
- </para>
- <note><para>This function was added in PHP 4.0.6 and requires GD 2.0.1 or
later</para></note>
- </refsect1>
- </refentry>
-
-
- <refentry id="function.imagecolorresolve">
- <refnamediv>
- <refname>ImageColorResolve</refname>
- <refpurpose>
- Get the index of the specified color or its closest possible
- alternative
- </refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagecolorresolve</function></funcdef>
- <paramdef>int <parameter>im</parameter></paramdef>
- <paramdef>int <parameter>red</parameter></paramdef>
- <paramdef>int <parameter>green</parameter></paramdef>
- <paramdef>int <parameter>blue</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- This function is guaranteed to return a color index for a
- requested color, either the exact color or the closest possible
- alternative.
- </para>
- <para>
- See also <function>imagecolorclosest</function>.
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecolorresolvealpha">
- <refnamediv>
- <refname>ImageColorResolveAlpha</refname>
- <refpurpose>
- Get the index of the specified color + alpha or its closest possible
- alternative
- </refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagecolorresolvealpha</function></funcdef>
- <paramdef>resource <parameter>im</parameter></paramdef>
- <paramdef>int <parameter>red</parameter></paramdef>
- <paramdef>int <parameter>green</parameter></paramdef>
- <paramdef>int <parameter>blue</parameter></paramdef>
- <paramdef>int <parameter>alpha</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- This function is guaranteed to return a color index for a
- requested color, either the exact color or the closest possible
- alternative.
- </para>
- <para>
- See also <function>imagecolorclosestalpha</function>.
- </para>
- <note><para>This function was added in PHP 4.0.6 and requires GD
2.0.1</para></note>
- </refsect1>
- </refentry>
-
-
-
- <refentry id="function.imagegammacorrect">
- <refnamediv>
- <refname>ImageGammaCorrect</refname>
- <refpurpose>
- Apply a gamma correction to a GD image
- </refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int
- <function>imagegammacorrect</function>
- </funcdef>
- <paramdef>int
- <parameter>im</parameter>
- </paramdef>
- <paramdef>double
- <parameter>inputgamma</parameter>
- </paramdef>
- <paramdef>double
- <parameter>outputgamma</parameter>
- </paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- The <function>ImageGammaCorrect</function> function applies gamma
- correction to a gd image stream (<parameter>im</parameter>) given
- an input gamma, the parameter <parameter>inputgamma</parameter>
- and an output gamma, the parameter
- <parameter>outputgamma</parameter>.
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecolorset">
- <refnamediv>
- <refname>ImageColorSet</refname>
- <refpurpose>
- Set the color for the specified palette index
- </refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>bool <function>imagecolorset</function></funcdef>
- <paramdef>int <parameter>im</parameter></paramdef>
- <paramdef>int <parameter>index</parameter></paramdef>
- <paramdef>int <parameter>red</parameter></paramdef>
- <paramdef>int <parameter>green</parameter></paramdef>
- <paramdef>int <parameter>blue</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- This sets the specified index in the palette to the specified
- color. This is useful for creating flood-fill-like effects in
- paletted images without the overhead of performing the actual
- flood-fill.
- </para>
- <para>
- See also <function>imagecolorat</function>.
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecolorsforindex">
- <refnamediv>
- <refname>ImageColorsForIndex</refname>
- <refpurpose>Get the colors for an index</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>array <function>imagecolorsforindex</function></funcdef>
- <paramdef>int <parameter>im</parameter></paramdef>
- <paramdef>int <parameter>index</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- This returns an associative array with red, green, and blue keys
- that contain the appropriate values for the specified color
- index.
- </para>
- <para>
- See also <function>imagecolorat</function> and
- <function>imagecolorexact</function>.
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecolorstotal">
- <refnamediv>
- <refname>ImageColorsTotal</refname>
- <refpurpose>
- Find out the number of colors in an image's palette
- </refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagecolorstotal</function></funcdef>
- <paramdef>int <parameter>im</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- This returns the number of colors in the specified image's
- palette.
- </para>
- <para>
- See also <function>imagecolorat</function> and
- <function>imagecolorsforindex</function>.
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecolortransparent">
- <refnamediv>
- <refname>ImageColorTransparent</refname>
- <refpurpose>Define a color as transparent</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagecolortransparent</function></funcdef>
- <paramdef>int <parameter>im</parameter></paramdef>
- <paramdef>int
- <parameter><optional>col</optional></parameter>
- </paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- <function>ImageColorTransparent</function> sets the transparent
- color in the <parameter>im</parameter> image to
- <parameter>col</parameter>. <parameter>Im</parameter> is the
- image identifier returned by <function>ImageCreate</function> and
- <parameter>col</parameter> is a color identifier returned by
- <function>ImageColorAllocate</function>.
- </para>
- <para>
- The identifier of the new (or current, if none is specified)
- transparent color is returned.
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecopy">
- <refnamediv>
- <refname>ImageCopy</refname>
- <refpurpose>
- Copy part of an image
- </refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int
- <function>ImageCopy</function>
- </funcdef>
- <paramdef>int
- <parameter>dst_im</parameter>
- </paramdef>
- <paramdef>int
- <parameter>src_im</parameter>
- </paramdef>
- <paramdef>int
- <parameter>dst_x</parameter>
- </paramdef>
- <paramdef>int
- <parameter>dst_y</parameter>
- </paramdef>
- <paramdef>int
- <parameter>src_x</parameter>
- </paramdef>
- <paramdef>int
- <parameter>src_y</parameter>
- </paramdef>
- <paramdef>int
- <parameter>src_w</parameter>
- </paramdef>
- <paramdef>int
- <parameter>src_h</parameter>
- </paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- Copy a part of <parameter>src_im</parameter> onto
- <parameter>dst_im</parameter> starting at the x,y coordinates
- <parameter>src_x</parameter>, <parameter>src_y </parameter> with
- a width of <parameter>src_w</parameter> and a height of
- <parameter>src_h</parameter>. The portion defined will be copied
- onto the x,y coordinates, <parameter>dst_x</parameter> and
- <parameter>dst_y</parameter>.
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecopymerge">
- <refnamediv>
- <refname>ImageCopyMerge</refname>
- <refpurpose>
- Copy and merge part of an image
- </refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>ImageCopyMerge</function> </funcdef>
- <paramdef>int <parameter>dst_im</parameter> </paramdef>
- <paramdef>int <parameter>src_im</parameter> </paramdef>
- <paramdef>int <parameter>dst_x</parameter> </paramdef>
- <paramdef>int <parameter>dst_y</parameter> </paramdef>
- <paramdef>int <parameter>src_x</parameter> </paramdef>
- <paramdef>int <parameter>src_y</parameter> </paramdef>
- <paramdef>int <parameter>src_w</parameter> </paramdef>
- <paramdef>int <parameter>src_h</parameter> </paramdef>
- <paramdef>int <parameter>pct</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- Copy a part of <parameter>src_im</parameter> onto
- <parameter>dst_im</parameter> starting at the x,y coordinates
- <parameter>src_x</parameter>, <parameter>src_y </parameter> with
- a width of <parameter>src_w</parameter> and a height of
- <parameter>src_h</parameter>. The portion defined will be copied
- onto the x,y coordinates, <parameter>dst_x</parameter> and
- <parameter>dst_y</parameter>.
- The two images will be merged according to <parameter>pct</parameter>
- which can range from 0 to 100. When <parameter>pct</parameter> = 0,
- no action is taken, when 100 this function behaves identically
- to <function>ImageCopy</function>.
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecopymergegray">
- <refnamediv>
- <refname>ImageCopyMergeGray</refname>
- <refpurpose>
- Copy and merge part of an image with gray scale
- </refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>ImageCopyMergeGray</function> </funcdef>
- <paramdef>int <parameter>dst_im</parameter> </paramdef>
- <paramdef>int <parameter>src_im</parameter> </paramdef>
- <paramdef>int <parameter>dst_x</parameter> </paramdef>
- <paramdef>int <parameter>dst_y</parameter> </paramdef>
- <paramdef>int <parameter>src_x</parameter> </paramdef>
- <paramdef>int <parameter>src_y</parameter> </paramdef>
- <paramdef>int <parameter>src_w</parameter> </paramdef>
- <paramdef>int <parameter>src_h</parameter> </paramdef>
- <paramdef>int <parameter>pct</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- This function is identical to <function>ImageCopyMerge</function> except
- that when merging it preservese the hue of the source by converting
- the destination pixels to gray scale before the copy operation.
- </para>
- <para>
- Copy a part of <parameter>src_im</parameter> onto
- <parameter>dst_im</parameter> starting at the x,y coordinates
- <parameter>src_x</parameter>, <parameter>src_y </parameter> with
- a width of <parameter>src_w</parameter> and a height of
- <parameter>src_h</parameter>. The portion defined will be copied
- onto the x,y coordinates, <parameter>dst_x</parameter> and
- <parameter>dst_y</parameter>.
- The two images will be merged according to <parameter>pct</parameter>
- which can range from 0 to 100. When <parameter>pct</parameter> = 0,
- no action is taken, when 100 this function behaves identically
- to <function>ImageCopy</function>.
- </para>
- <para>
- This function is identical to <function>ImageCopyMerge</function> except
- that when merging it preservese the hue of the source by converting
- the destination pixels to gray scale before the copy operation.
- </para>
- <note><para>This function was added in PHP 4.0.6</para></note>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecopyresized">
- <refnamediv>
- <refname>ImageCopyResized</refname>
- <refpurpose>Copy and resize part of an image</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagecopyresized</function></funcdef>
- <paramdef>int <parameter>dst_im</parameter></paramdef>
- <paramdef>int <parameter>src_im</parameter></paramdef>
- <paramdef>int <parameter>dstX</parameter></paramdef>
- <paramdef>int <parameter>dstY</parameter></paramdef>
- <paramdef>int <parameter>srcX</parameter></paramdef>
- <paramdef>int <parameter>srcY</parameter></paramdef>
- <paramdef>int <parameter>dstW</parameter></paramdef>
- <paramdef>int <parameter>dstH</parameter></paramdef>
- <paramdef>int <parameter>srcW</parameter></paramdef>
- <paramdef>int <parameter>srcH</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- <function>ImageCopyResized</function> copies a rectangular
- portion of one image to another image.
- <parameter>Dst_im</parameter> is the destination image,
- <parameter>src_im</parameter> is the source image identifier. If
- the source and destination coordinates and width and heights
- differ, appropriate stretching or shrinking of the image fragment
- will be performed. The coordinates refer to the upper left
- corner. This function can be used to copy regions within the
- same image (if <parameter>dst_im</parameter> is the same as
- <parameter>src_im</parameter>) but if the regions overlap the
- results will be unpredictable.
- </para>
- <para>
- See also <function>ImageCopyResampled</function>.
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecopyresampled">
- <refnamediv>
- <refname>ImageCopyResampled</refname>
- <refpurpose>Copy and resize part of an image with resampling</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagecopyresampled</function></funcdef>
- <paramdef>resource <parameter>dst_im</parameter></paramdef>
- <paramdef>resource <parameter>src_im</parameter></paramdef>
- <paramdef>int <parameter>dstX</parameter></paramdef>
- <paramdef>int <parameter>dstY</parameter></paramdef>
- <paramdef>int <parameter>srcX</parameter></paramdef>
- <paramdef>int <parameter>srcY</parameter></paramdef>
- <paramdef>int <parameter>dstW</parameter></paramdef>
- <paramdef>int <parameter>dstH</parameter></paramdef>
- <paramdef>int <parameter>srcW</parameter></paramdef>
- <paramdef>int <parameter>srcH</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- <function>ImageCopyResampled</function> copies a rectangular
- portion of one image to another image, smoothly interpolating pixel
- values so that, in particular, reducing the size of an image still
- retains a great deal of clarity.
- <parameter>Dst_im</parameter> is the destination image,
- <parameter>src_im</parameter> is the source image identifier. If
- the source and destination coordinates and width and heights
- differ, appropriate stretching or shrinking of the image fragment
- will be performed. The coordinates refer to the upper left
- corner. This function can be used to copy regions within the
- same image (if <parameter>dst_im</parameter> is the same as
- <parameter>src_im</parameter>) but if the regions overlap the
- results will be unpredictable.
- </para>
- <para>
- See also <function>ImageCopyResized</function>.
- </para>
- <note><para>This function was added in PHP 4.0.6 and requires GD 2.0.1 or
later</para></note>
- </refsect1>
- </refentry>
-
-
-
- <refentry id="function.imagecreate">
- <refnamediv>
- <refname>ImageCreate</refname>
- <refpurpose>Create a new palette based image</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>int <function>imagecreate</function></funcdef>
- <paramdef>int <parameter>x_size</parameter></paramdef>
- <paramdef>int <parameter>y_size</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- <function>ImageCreate</function> returns an image identifier
- representing a blank image of size <parameter>x_size</parameter>
- by <parameter>y_size</parameter>.
- <example>
- <title>
- Creating a new GD image stream and outputting an image.
- </title>
- <programlisting role="php">
+<reference id="ref.image">
+ <title>Image functions</title>
+ <titleabbrev>Graphics</titleabbrev>
+
+ <partintro>
+ <simpara>
+ You can use the image functions in PHP to get the size of
+ <acronym>JPEG</acronym>, <acronym>GIF</acronym>,
+ <acronym>PNG</acronym>, and <acronym>SWF</acronym> images, and if
+ you have the <acronym>GD</acronym> library (available at <ulink
+ url="&url.gd;">&url.gd;</ulink>) you will also be able to create
+ and manipulate images.
+ </simpara>
+ <simpara>
+ The format of images you are able to manipulate depend on the
+ version of gd you install, and any other libraries gd might need
+ to access those image formats. Versions of gd older than gd-1.6
+ support gif format images, and do not support png, where versions
+ greater than gd-1.6 support png, not gif.
+ </simpara>
+ <simpara>
+ In order to read and write images in jpeg format, you will need to
+ obtain and install jpeg-6b (available at
+ <ulink url="&url.jpeg;">&url.jpeg;</ulink>), and then recompile gd to
+ make use of jpeg-6b. You will also have to compile PHP with
+ <option role="configure">--with-jpeg-dir=/path/to/jpeg-6b</option>.
+ </simpara>
+ <simpara>
+ To add support for Type 1 fonts, you can install t1lib (available
+ at <ulink url="&url.t1lib;">&url.t1lib;</ulink>), and then add
+ <option role="configure">--with-t1lib[=dir]</option>.
+ </simpara>
+ </partintro>
+
+ <refentry id="function.getimagesize">
+ <refnamediv>
+ <refname>GetImageSize</refname>
+ <refpurpose>Get the size of a GIF, JPEG, PNG or SWF image</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>array <function>getimagesize</function></funcdef>
+ <paramdef>string <parameter>filename</parameter></paramdef>
+ <paramdef>array
+ <parameter><optional>imageinfo</optional></parameter>
+ </paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ The <function>GetImageSize</function> function will determine the
+ size of any <acronym>GIF</acronym>, <acronym>JPG</acronym>,
+ <acronym>PNG</acronym> or <acronym>SWF</acronym> image file and
+ return the dimensions along with the file type and a height/width
+ text string to be used inside a normal <acronym>HTML</acronym>
+ <sgmltag>IMG</sgmltag> tag.
+ </para>
+ <para>
+ Returns an array with 4 elements. Index 0 contains the width of
+ the image in pixels. Index 1 contains the height. Index 2 a
+ flag indicating the type of the image. 1 = GIF, 2 = JPG, 3 =
+ PNG, 4 = SWF. Index 3 is a text string with the correct
+ "height=xxx width=xxx" string that can be used directly in an IMG
+ tag.
+ <example>
+ <title>GetImageSize (file)</title>
+ <programlisting role="php">
+<?php $size = GetImageSize ("img/flag.jpg"); ?>
+<IMG SRC="img/flag.jpg" <?php echo $size[3]; ?>
+ </programlisting>
+ </example>
+ </para>
+ <para>
+ <example>
+ <title>GetImageSize (URL)</title>
+ <programlisting role="php">
+<?php $size = GetImageSize ("http://www.php.net/gifs/logo.gif"); ?>
+ </programlisting>
+ </example>
+ </para>
+ <para>
+ The optional <parameter>imageinfo</parameter> parameter allows
+ you to extract some extended information from the image
+ file. Currently this will return the diffrent
+ <acronym>JPG</acronym> APP markers in an associative Array. Some
+ Programs use these APP markers to embedd text information in
+ images. A very common one in to embed <acronym>IPTC</acronym>
+ <ulink url="&url.iptc;">&url.iptc;</ulink> information in the
+ APP13 marker. You can use the <function>iptcparse</function>
+ function to parse the binary APP13 marker into something
+ readable.
+ <example>
+ <title>GetImageSize returning IPTC</title>
+ <programlisting>
+<?php
+ $size = GetImageSize ("testimg.jpg",&$info);
+ if (isset ($info["APP13"])) {
+ $iptc = iptcparse ($info["APP13"]);
+ var_dump ($iptc);
+ }
+?>
+ </programlisting>
+ </example>
+ <note>
+ <simpara>
+ This function does not require the GD image library.
+ </simpara>
+ </note>
+ <note>
+ <simpara>
+ URL support was added in PHP 4.0.5
+ </simpara>
+ </note>
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagealphablending">
+ <refnamediv>
+ <refname>ImageAlphaBlending</refname>
+ <refpurpose>Set the blending mode for an image</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagealphablending</function></funcdef>
+ <paramdef>resource <parameter>im</parameter></paramdef>
+ <paramdef>bool <parameter>blendmode</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ <function>ImageAlphaBlending</function> allows for two different
+ modes of drawing on truecolor images. In blending mode, the
+ alpha channel component of the color supplied to all drawing function,
+ such as <function>ImageSetPixel</function> determines how much of the
+ underlying color shouldbe allowed to shine through. As a result, gd
+ automatically blends the existing color at that point with the drawing color,
+ and stores the result in the image. The resulting pixel is opaque. In
+ non-blending mode, the drawing color is copied literally with its alpha channel
+ information, replacing the destination pixel. Blending mode is not available
+ when drawing on palette images.
+ If <parameter>blendmode</parameter> is true, then blending mode is enabled,
+otherwise
+ disabled.
+ </para>
+ <note><para>This function was added in PHP 4.0.6 and requires GD
+2.0.1</para></note>
+ </refsect1>
+ </refentry>
+
+
+ <refentry id="function.imagearc">
+ <refnamediv>
+ <refname>ImageArc</refname>
+ <refpurpose>Draw a partial ellipse</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagearc</function></funcdef>
+ <paramdef>int <parameter>im</parameter></paramdef>
+ <paramdef>int <parameter>cx</parameter></paramdef>
+ <paramdef>int <parameter>cy</parameter></paramdef>
+ <paramdef>int <parameter>w</parameter></paramdef>
+ <paramdef>int <parameter>h</parameter></paramdef>
+ <paramdef>int <parameter>s</parameter></paramdef>
+ <paramdef>int <parameter>e</parameter></paramdef>
+ <paramdef>int <parameter>col</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ <function>ImageArc</function> draws a partial ellipse centered at
+ <parameter>cx</parameter>, <parameter>cy</parameter> (top left is
+ 0, 0) in the image represented by <parameter>im</parameter>.
+ <parameter>W</parameter>
+ and <parameter>h</parameter> specifies the ellipse's width and
+ height respectively while the start and end points are specified
+ in degrees indicated by the <parameter>s</parameter> and
+ <parameter>e</parameter>. arguments.
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagefilledarc">
+ <refnamediv>
+ <refname>ImageFilledArc</refname>
+ <refpurpose>Draw a partial ellipse and fill it</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagefilledarc</function></funcdef>
+ <paramdef>int <parameter>im</parameter></paramdef>
+ <paramdef>int <parameter>cx</parameter></paramdef>
+ <paramdef>int <parameter>cy</parameter></paramdef>
+ <paramdef>int <parameter>w</parameter></paramdef>
+ <paramdef>int <parameter>h</parameter></paramdef>
+ <paramdef>int <parameter>s</parameter></paramdef>
+ <paramdef>int <parameter>e</parameter></paramdef>
+ <paramdef>int <parameter>col</parameter></paramdef>
+ <paramdef>int <parameter>style</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ <function>ImageFilledArc</function> draws a partial ellipse centered at
+ <parameter>cx</parameter>, <parameter>cy</parameter> (top left is
+ 0, 0) in the image represented by <parameter>im</parameter>.
+ <parameter>W</parameter>
+ and <parameter>h</parameter> specifies the ellipse's width and
+ height respectively while the start and end points are specified
+ in degrees indicated by the <parameter>s</parameter> and
+ <parameter>e</parameter>. arguments.
+ <parameter>style</parameter> is a bitwise OR of the following possibilities:
+ <orderedlist>
+ <listitem><simpara><literal>IMG_ARC_PIE</literal></simpara></listitem>
+ <listitem><simpara><literal>IMG_ARC_CHORD</literal></simpara></listitem>
+ <listitem><simpara><literal>IMG_ARC_NOFILL</literal></simpara></listitem>
+ <listitem><simpara><literal>IMG_ARC_EDGED</literal></simpara></listitem>
+ </orderedlist>
+ <literal>IMG_ARC_PIE</literal> and <literal>IMG_ARC_CHORD</literal> are mutually
+exclusive; <literal>IMG_ARC_CHORD</literal> just
+ connects the starting and ending angles with a straight line, while
+ <literal>IMG_ARC_PIE</literal> produces a rounded edge.
+<literal>IMG_ARC_NOFILL</literal> indicates that the arc
+ or chord should be outlined, not filled. <literal>IMG_ARC_EDGED</literal>, used
+together with
+ <literal>IMG_ARC_NOFILL</literal>, indicates that the beginning and ending angles
+should be
+ connected to the center - this is a good way to outline (rather than fill)
+ a 'pie slice'.
+ </para>
+ <note><para>This function was added in PHP 4.0.6 and requires GD
+2.0.1</para></note>
+ </refsect1>
+ </refentry>
+
+
+
+ <refentry id="function.imageellipse">
+ <refnamediv>
+ <refname>ImageEllipse</refname>
+ <refpurpose>Draw an ellipse</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imageellipse</function></funcdef>
+ <paramdef>resource <parameter>im</parameter></paramdef>
+ <paramdef>int <parameter>cx</parameter></paramdef>
+ <paramdef>int <parameter>cy</parameter></paramdef>
+ <paramdef>int <parameter>w</parameter></paramdef>
+ <paramdef>int <parameter>h</parameter></paramdef>
+ <paramdef>int <parameter>col</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ <function>ImageEllipse</function> draws an ellipse centered at
+ <parameter>cx</parameter>, <parameter>cy</parameter> (top left is
+ 0, 0) in the image represented by <parameter>im</parameter>.
+ <parameter>W</parameter> and <parameter>h</parameter> specifies the
+ ellipse's width and height respectively. The color of the ellipse is
+ specified by <parameter>color</parameter>.
+ </para>
+ <note><para>This function was added in PHP 4.0.6 and requires GD 2.0.2 or
+later</para></note>
+ </refsect1>
+ </refentry>
+
+
+ <refentry id="function.imagefilledellipse">
+ <refnamediv>
+ <refname>ImageFilledEllipse</refname>
+ <refpurpose>Draw a filled ellipse</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagefilledellipse</function></funcdef>
+ <paramdef>resource <parameter>im</parameter></paramdef>
+ <paramdef>int <parameter>cx</parameter></paramdef>
+ <paramdef>int <parameter>cy</parameter></paramdef>
+ <paramdef>int <parameter>w</parameter></paramdef>
+ <paramdef>int <parameter>h</parameter></paramdef>
+ <paramdef>int <parameter>col</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ <function>ImageFilledEllipse</function> draws an ellipse centered at
+ <parameter>cx</parameter>, <parameter>cy</parameter> (top left is
+ 0, 0) in the image represented by <parameter>im</parameter>.
+ <parameter>W</parameter> and <parameter>h</parameter> specifies the
+ ellipse's width and height respectively. The ellipse is filled using
+ <parameter>color</parameter>
+ </para>
+ <note><para>This function was added in PHP 4.0.6 and requires GD 2.0.1 or
+later</para></note>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagechar">
+ <refnamediv>
+ <refname>ImageChar</refname>
+ <refpurpose>Draw a character horizontally</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagechar</function></funcdef>
+ <paramdef>int <parameter>im</parameter></paramdef>
+ <paramdef>int <parameter>font</parameter></paramdef>
+ <paramdef>int <parameter>x</parameter></paramdef>
+ <paramdef>int <parameter>y</parameter></paramdef>
+ <paramdef>string <parameter>c</parameter></paramdef>
+ <paramdef>int <parameter>col</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ <function>ImageChar</function> draws the first character of
+ <parameter>c</parameter> in the image identified by
+ <parameter>id</parameter> with its upper-left at
+ <parameter>x</parameter>,<parameter>y</parameter> (top left is 0,
+ 0) with the color <parameter>col</parameter>. If font is 1, 2, 3,
+ 4 or 5, a built-in font is used (with higher numbers
+ corresponding to larger fonts).
+ </para>
+ <para>
+ See also <function>imageloadfont</function>.
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecharup">
+ <refnamediv>
+ <refname>ImageCharUp</refname>
+ <refpurpose>Draw a character vertically</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagecharup</function></funcdef>
+ <paramdef>int <parameter>im</parameter></paramdef>
+ <paramdef>int <parameter>font</parameter></paramdef>
+ <paramdef>int <parameter>x</parameter></paramdef>
+ <paramdef>int <parameter>y</parameter></paramdef>
+ <paramdef>string <parameter>c</parameter></paramdef>
+ <paramdef>int <parameter>col</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ <function>ImageCharUp</function> draws the character
+ <parameter>c</parameter> vertically in the image identified by
+ <parameter>im</parameter> at coordinates
+ <parameter>x</parameter>, <parameter>y</parameter> (top left is
+ 0, 0) with the color <parameter>col</parameter>. If font is 1,
+ 2, 3, 4 or 5, a built-in font is used.
+ </para>
+ <para>
+ See also <function>imageloadfont</function>.
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecolorallocate">
+ <refnamediv>
+ <refname>ImageColorAllocate</refname>
+ <refpurpose>Allocate a color for an image</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagecolorallocate</function></funcdef>
+ <paramdef>int <parameter>im</parameter></paramdef>
+ <paramdef>int <parameter>red</parameter></paramdef>
+ <paramdef>int <parameter>green</parameter></paramdef>
+ <paramdef>int <parameter>blue</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ <function>ImageColorAllocate</function> returns a color
+ identifier representing the color composed of the given
+ <acronym>RGB</acronym> components. The <parameter>im</parameter>
+ argument is the return from the <function>imagecreate</function>
+ function. <function>ImageColorAllocate</function> must be called
+ to create each color that is to be used in the image represented
+ by <parameter>im</parameter>.
+ <informalexample>
+ <programlisting role="php">
+$white = ImageColorAllocate ($im, 255, 255, 255);
+$black = ImageColorAllocate ($im, 0, 0, 0);
+ </programlisting>
+ </informalexample>
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecolordeallocate">
+ <refnamediv>
+ <refname>ImageColorDeAllocate</refname>
+ <refpurpose>
+ De-allocate a color for an image
+ </refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int
+ <function>imagecolordeallocate</function>
+ </funcdef>
+ <paramdef>int
+ <parameter>im</parameter>
+ </paramdef>
+ <paramdef>int
+ <parameter>index</parameter>
+ </paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ The <function>ImageColorDeAllocate</function> function
+ de-allocates a color previously allocated with the
+ <function>ImageColorAllocate</function> function.
+ <informalexample>
+ <programlisting role="php">
+$white = ImageColorAllocate($im, 255, 255, 255);
+ImageColorDeAllocate($im, $white);
+ </programlisting>
+ </informalexample>
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecolorat">
+ <refnamediv>
+ <refname>ImageColorAt</refname>
+ <refpurpose>Get the index of the color of a pixel</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagecolorat</function></funcdef>
+ <paramdef>int <parameter>im</parameter></paramdef>
+ <paramdef>int <parameter>x</parameter></paramdef>
+ <paramdef>int <parameter>y</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ Returns the index of the color of the pixel at the
+ specified location in the image.
+ </para>
+ <para>
+ See also <function>imagecolorset</function> and
+ <function>imagecolorsforindex</function>.
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecolorclosest">
+ <refnamediv>
+ <refname>ImageColorClosest</refname>
+ <refpurpose>
+ Get the index of the closest color to the specified color
+ </refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagecolorclosest</function></funcdef>
+ <paramdef>int <parameter>im</parameter></paramdef>
+ <paramdef>int <parameter>red</parameter></paramdef>
+ <paramdef>int <parameter>green</parameter></paramdef>
+ <paramdef>int <parameter>blue</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ Returns the index of the color in the palette of the image which
+ is "closest" to the specified <acronym>RGB</acronym> value.
+ </para>
+ <para>
+ The "distance" between the desired color and each color in the
+ palette is calculated as if the <acronym>RGB</acronym> values
+ represented points in three-dimensional space.
+ </para>
+ <para>
+ See also <function>imagecolorexact</function>.
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecolorclosestalpha">
+ <refnamediv>
+ <refname>ImageColorClosestAlpha</refname>
+ <refpurpose>
+ Get the index of the closest color to the specified color + alpha
+ </refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagecolorclosestalpha</function></funcdef>
+ <paramdef>resource <parameter>im</parameter></paramdef>
+ <paramdef>int <parameter>red</parameter></paramdef>
+ <paramdef>int <parameter>green</parameter></paramdef>
+ <paramdef>int <parameter>blue</parameter></paramdef>
+ <paramdef>int <parameter>alpha</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ Returns the index of the color in the palette of the image which
+ is "closest" to the specified <acronym>RGB</acronym> value and
+<parameter>alpha</parameter> level.
+ </para>
+ <para>
+ See also <function>imagecolorexactalpha</function>.
+ </para>
+ <note><para>This function was added in PHP 4.0.6 and requires GD
+2.0.1</para></note>
+ </refsect1>
+ </refentry>
+
+
+
+ <refentry id="function.imagecolorexact">
+ <refnamediv>
+ <refname>ImageColorExact</refname>
+ <refpurpose>Get the index of the specified color</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagecolorexact</function></funcdef>
+ <paramdef>int <parameter>im</parameter></paramdef>
+ <paramdef>int <parameter>red</parameter></paramdef>
+ <paramdef>int <parameter>green</parameter></paramdef>
+ <paramdef>int <parameter>blue</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ Returns the index of the specified color in the palette of the
+ image.
+ </para>
+ <para>
+ If the color does not exist in the image's palette, -1 is
+ returned.
+ </para>
+ <para>
+ See also <function>imagecolorclosest</function>.
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecolorexactalpha">
+ <refnamediv>
+ <refname>ImageColorExactAlpha</refname>
+ <refpurpose>Get the index of the specified color + alpha</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagecolorexactalpha</function></funcdef>
+ <paramdef>resource <parameter>im</parameter></paramdef>
+ <paramdef>int <parameter>red</parameter></paramdef>
+ <paramdef>int <parameter>green</parameter></paramdef>
+ <paramdef>int <parameter>blue</parameter></paramdef>
+ <paramdef>int <parameter>alpha</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ Returns the index of the specified color+alpha in the palette of the
+ image.
+ </para>
+ <para>
+ If the color does not exist in the image's palette, -1 is
+ returned.
+ </para>
+ <para>
+ See also <function>imagecolorclosestalpha</function>.
+ </para>
+ <note><para>This function was added in PHP 4.0.6 and requires GD 2.0.1 or
+later</para></note>
+ </refsect1>
+ </refentry>
+
+
+ <refentry id="function.imagecolorresolve">
+ <refnamediv>
+ <refname>ImageColorResolve</refname>
+ <refpurpose>
+ Get the index of the specified color or its closest possible
+ alternative
+ </refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagecolorresolve</function></funcdef>
+ <paramdef>int <parameter>im</parameter></paramdef>
+ <paramdef>int <parameter>red</parameter></paramdef>
+ <paramdef>int <parameter>green</parameter></paramdef>
+ <paramdef>int <parameter>blue</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ This function is guaranteed to return a color index for a
+ requested color, either the exact color or the closest possible
+ alternative.
+ </para>
+ <para>
+ See also <function>imagecolorclosest</function>.
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecolorresolvealpha">
+ <refnamediv>
+ <refname>ImageColorResolveAlpha</refname>
+ <refpurpose>
+ Get the index of the specified color + alpha or its closest possible
+ alternative
+ </refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagecolorresolvealpha</function></funcdef>
+ <paramdef>resource <parameter>im</parameter></paramdef>
+ <paramdef>int <parameter>red</parameter></paramdef>
+ <paramdef>int <parameter>green</parameter></paramdef>
+ <paramdef>int <parameter>blue</parameter></paramdef>
+ <paramdef>int <parameter>alpha</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ This function is guaranteed to return a color index for a
+ requested color, either the exact color or the closest possible
+ alternative.
+ </para>
+ <para>
+ See also <function>imagecolorclosestalpha</function>.
+ </para>
+ <note><para>This function was added in PHP 4.0.6 and requires GD
+2.0.1</para></note>
+ </refsect1>
+ </refentry>
+
+
+
+ <refentry id="function.imagegammacorrect">
+ <refnamediv>
+ <refname>ImageGammaCorrect</refname>
+ <refpurpose>
+ Apply a gamma correction to a GD image
+ </refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int
+ <function>imagegammacorrect</function>
+ </funcdef>
+ <paramdef>int
+ <parameter>im</parameter>
+ </paramdef>
+ <paramdef>double
+ <parameter>inputgamma</parameter>
+ </paramdef>
+ <paramdef>double
+ <parameter>outputgamma</parameter>
+ </paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ The <function>ImageGammaCorrect</function> function applies gamma
+ correction to a gd image stream (<parameter>im</parameter>) given
+ an input gamma, the parameter <parameter>inputgamma</parameter>
+ and an output gamma, the parameter
+ <parameter>outputgamma</parameter>.
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecolorset">
+ <refnamediv>
+ <refname>ImageColorSet</refname>
+ <refpurpose>
+ Set the color for the specified palette index
+ </refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>bool <function>imagecolorset</function></funcdef>
+ <paramdef>int <parameter>im</parameter></paramdef>
+ <paramdef>int <parameter>index</parameter></paramdef>
+ <paramdef>int <parameter>red</parameter></paramdef>
+ <paramdef>int <parameter>green</parameter></paramdef>
+ <paramdef>int <parameter>blue</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ This sets the specified index in the palette to the specified
+ color. This is useful for creating flood-fill-like effects in
+ paletted images without the overhead of performing the actual
+ flood-fill.
+ </para>
+ <para>
+ See also <function>imagecolorat</function>.
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecolorsforindex">
+ <refnamediv>
+ <refname>ImageColorsForIndex</refname>
+ <refpurpose>Get the colors for an index</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>array <function>imagecolorsforindex</function></funcdef>
+ <paramdef>int <parameter>im</parameter></paramdef>
+ <paramdef>int <parameter>index</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ This returns an associative array with red, green, and blue keys
+ that contain the appropriate values for the specified color
+ index.
+ </para>
+ <para>
+ See also <function>imagecolorat</function> and
+ <function>imagecolorexact</function>.
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecolorstotal">
+ <refnamediv>
+ <refname>ImageColorsTotal</refname>
+ <refpurpose>
+ Find out the number of colors in an image's palette
+ </refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagecolorstotal</function></funcdef>
+ <paramdef>int <parameter>im</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ This returns the number of colors in the specified image's
+ palette.
+ </para>
+ <para>
+ See also <function>imagecolorat</function> and
+ <function>imagecolorsforindex</function>.
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecolortransparent">
+ <refnamediv>
+ <refname>ImageColorTransparent</refname>
+ <refpurpose>Define a color as transparent</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagecolortransparent</function></funcdef>
+ <paramdef>int <parameter>im</parameter></paramdef>
+ <paramdef>int
+ <parameter><optional>col</optional></parameter>
+ </paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ <function>ImageColorTransparent</function> sets the transparent
+ color in the <parameter>im</parameter> image to
+ <parameter>col</parameter>. <parameter>Im</parameter> is the
+ image identifier returned by <function>ImageCreate</function> and
+ <parameter>col</parameter> is a color identifier returned by
+ <function>ImageColorAllocate</function>.
+ </para>
+ <para>
+ The identifier of the new (or current, if none is specified)
+ transparent color is returned.
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecopy">
+ <refnamediv>
+ <refname>ImageCopy</refname>
+ <refpurpose>
+ Copy part of an image
+ </refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int
+ <function>ImageCopy</function>
+ </funcdef>
+ <paramdef>resource
+ <parameter>dst_im</parameter>
+ </paramdef>
+ <paramdef>resource
+ <parameter>src_im</parameter>
+ </paramdef>
+ <paramdef>int
+ <parameter>dst_x</parameter>
+ </paramdef>
+ <paramdef>int
+ <parameter>dst_y</parameter>
+ </paramdef>
+ <paramdef>int
+ <parameter>src_x</parameter>
+ </paramdef>
+ <paramdef>int
+ <parameter>src_y</parameter>
+ </paramdef>
+ <paramdef>int
+ <parameter>src_w</parameter>
+ </paramdef>
+ <paramdef>int
+ <parameter>src_h</parameter>
+ </paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ Copy a part of <parameter>src_im</parameter> onto
+ <parameter>dst_im</parameter> starting at the x,y coordinates
+ <parameter>src_x</parameter>, <parameter>src_y </parameter> with
+ a width of <parameter>src_w</parameter> and a height of
+ <parameter>src_h</parameter>. The portion defined will be copied
+ onto the x,y coordinates, <parameter>dst_x</parameter> and
+ <parameter>dst_y</parameter>.
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecopymerge">
+ <refnamediv>
+ <refname>ImageCopyMerge</refname>
+ <refpurpose>
+ Copy and merge part of an image
+ </refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>ImageCopyMerge</function> </funcdef>
+ <paramdef>resource <parameter>dst_im</parameter> </paramdef>
+ <paramdef>resource <parameter>src_im</parameter> </paramdef>
+ <paramdef>int <parameter>dst_x</parameter> </paramdef>
+ <paramdef>int <parameter>dst_y</parameter> </paramdef>
+ <paramdef>int <parameter>src_x</parameter> </paramdef>
+ <paramdef>int <parameter>src_y</parameter> </paramdef>
+ <paramdef>int <parameter>src_w</parameter> </paramdef>
+ <paramdef>int <parameter>src_h</parameter> </paramdef>
+ <paramdef>int <parameter>pct</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ Copy a part of <parameter>src_im</parameter> onto
+ <parameter>dst_im</parameter> starting at the x,y coordinates
+ <parameter>src_x</parameter>, <parameter>src_y </parameter> with
+ a width of <parameter>src_w</parameter> and a height of
+ <parameter>src_h</parameter>. The portion defined will be copied
+ onto the x,y coordinates, <parameter>dst_x</parameter> and
+ <parameter>dst_y</parameter>.
+ The two images will be merged according to <parameter>pct</parameter>
+ which can range from 0 to 100. When <parameter>pct</parameter> = 0,
+ no action is taken, when 100 this function behaves identically
+ to <function>ImageCopy</function>.
+ </para>
+ <note><para>This function was added in PHP 4.0.6</para></note>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecopymergegray">
+ <refnamediv>
+ <refname>ImageCopyMergeGray</refname>
+ <refpurpose>
+ Copy and merge part of an image with gray scale
+ </refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>ImageCopyMergeGray</function> </funcdef>
+ <paramdef>resource <parameter>dst_im</parameter> </paramdef>
+ <paramdef>resource <parameter>src_im</parameter> </paramdef>
+ <paramdef>int <parameter>dst_x</parameter> </paramdef>
+ <paramdef>int <parameter>dst_y</parameter> </paramdef>
+ <paramdef>int <parameter>src_x</parameter> </paramdef>
+ <paramdef>int <parameter>src_y</parameter> </paramdef>
+ <paramdef>int <parameter>src_w</parameter> </paramdef>
+ <paramdef>int <parameter>src_h</parameter> </paramdef>
+ <paramdef>int <parameter>pct</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ <function>ImageCopyMergeGray</function> copy a part of
+<parameter>src_im</parameter> onto
+ <parameter>dst_im</parameter> starting at the x,y coordinates
+ <parameter>src_x</parameter>, <parameter>src_y </parameter> with
+ a width of <parameter>src_w</parameter> and a height of
+ <parameter>src_h</parameter>. The portion defined will be copied
+ onto the x,y coordinates, <parameter>dst_x</parameter> and
+ <parameter>dst_y</parameter>.
+ The two images will be merged according to <parameter>pct</parameter>
+ which can range from 0 to 100. When <parameter>pct</parameter> = 0,
+ no action is taken, when 100 this function behaves identically
+ to <function>ImageCopy</function>.
+ </para>
+ <para>
+ This function is identical to <function>ImageCopyMerge</function> except
+ that when merging it preservese the hue of the source by converting
+ the destination pixels to gray scale before the copy operation.
+ </para>
+ <note><para>This function was added in PHP 4.0.6</para></note>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecopyresized">
+ <refnamediv>
+ <refname>ImageCopyResized</refname>
+ <refpurpose>Copy and resize part of an image</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagecopyresized</function></funcdef>
+ <paramdef>resource <parameter>dst_im</parameter></paramdef>
+ <paramdef>resource <parameter>src_im</parameter></paramdef>
+ <paramdef>int <parameter>dstX</parameter></paramdef>
+ <paramdef>int <parameter>dstY</parameter></paramdef>
+ <paramdef>int <parameter>srcX</parameter></paramdef>
+ <paramdef>int <parameter>srcY</parameter></paramdef>
+ <paramdef>int <parameter>dstW</parameter></paramdef>
+ <paramdef>int <parameter>dstH</parameter></paramdef>
+ <paramdef>int <parameter>srcW</parameter></paramdef>
+ <paramdef>int <parameter>srcH</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ <function>ImageCopyResized</function> copies a rectangular
+ portion of one image to another image.
+ <parameter>Dst_im</parameter> is the destination image,
+ <parameter>src_im</parameter> is the source image identifier. If
+ the source and destination coordinates and width and heights
+ differ, appropriate stretching or shrinking of the image fragment
+ will be performed. The coordinates refer to the upper left
+ corner. This function can be used to copy regions within the
+ same image (if <parameter>dst_im</parameter> is the same as
+ <parameter>src_im</parameter>) but if the regions overlap the
+ results will be unpredictable.
+ </para>
+ <para>
+ See also <function>ImageCopyResampled</function>.
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecopyresampled">
+ <refnamediv>
+ <refname>ImageCopyResampled</refname>
+ <refpurpose>Copy and resize part of an image with resampling</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagecopyresampled</function></funcdef>
+ <paramdef>resource <parameter>dst_im</parameter></paramdef>
+ <paramdef>resource <parameter>src_im</parameter></paramdef>
+ <paramdef>int <parameter>dstX</parameter></paramdef>
+ <paramdef>int <parameter>dstY</parameter></paramdef>
+ <paramdef>int <parameter>srcX</parameter></paramdef>
+ <paramdef>int <parameter>srcY</parameter></paramdef>
+ <paramdef>int <parameter>dstW</parameter></paramdef>
+ <paramdef>int <parameter>dstH</parameter></paramdef>
+ <paramdef>int <parameter>srcW</parameter></paramdef>
+ <paramdef>int <parameter>srcH</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ <function>ImageCopyResampled</function> copies a rectangular
+ portion of one image to another image, smoothly interpolating pixel
+ values so that, in particular, reducing the size of an image still
+ retains a great deal of clarity.
+ <parameter>Dst_im</parameter> is the destination image,
+ <parameter>src_im</parameter> is the source image identifier. If
+ the source and destination coordinates and width and heights
+ differ, appropriate stretching or shrinking of the image fragment
+ will be performed. The coordinates refer to the upper left
+ corner. This function can be used to copy regions within the
+ same image (if <parameter>dst_im</parameter> is the same as
+ <parameter>src_im</parameter>) but if the regions overlap the
+ results will be unpredictable.
+ </para>
+ <para>
+ See also <function>ImageCopyResized</function>.
+ </para>
+ <note><para>This function was added in PHP 4.0.6 and requires GD 2.0.1 or
+later</para></note>
+ </refsect1>
+ </refentry>
+
+
+
+ <refentry id="function.imagecreate">
+ <refnamediv>
+ <refname>ImageCreate</refname>
+ <refpurpose>Create a new palette based image</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>imagecreate</function></funcdef>
+ <paramdef>int <parameter>x_size</parameter></paramdef>
+ <paramdef>int <parameter>y_size</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ <function>ImageCreate</function> returns an image identifier
+ representing a blank image of size <parameter>x_size</parameter>
+ by <parameter>y_size</parameter>.
+ <example>
+ <title>
+ Creating a new GD image stream and outputting an image.
+ </title>
+ <programlisting role="php">
<?php
header ("Content-type: image/png");
$im = @ImageCreate (50, 100)
@@ -1054,36 +1052,34 @@
ImageString ($im, 1, 5, 5, "A Simple Text String", $text_color);
ImagePng ($im);
?>
- </programlisting>
- </example>
- </para>
- </refsect1>
- </refentry>
-
- <refentry id="function.imagecreatetruecolor">
- <refnamediv>
- <refname>ImageCreateTrueColor</refname>
- <refpurpose>Create a new true color image</refpurpose>
- </refnamediv>
- <refsect1>
- <title>Description</title>
- <funcsynopsis>
- <funcprototype>
- <funcdef>resource <function>imagecreatetruecolor</function></funcdef>
- <paramdef>int <parameter>x_size</parameter></paramdef>
- <paramdef>int <parameter>y_size</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- <para>
- <function>ImageCreateTrueColor</function> returns an image identifier
- representing a black image of size <parameter>x_size</parameter>
- by <parameter>y_size</parameter>.
- </para>
- <note><para>This function was added in PHP 4.0.6</para></note>
- <note><para>This function requires GD 2.0.1 or later</para></note>
- </refsect1>
+ </programlisting>
+ </example>
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="function.imagecreatetruecolor">
+ <refnamediv>
+ <refname>ImageCreateTrueColor</refname>
+ <refpurpose>Create a new true color image</refpurpose>
+ </refnamediv>
+ <refsect1>
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>resource <function>imagecreatetruecolor</function></funcdef>
+ <paramdef>int <parameter>x_size</parameter></paramdef>
+ <paramdef>int <parameter>y_size</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ <function>ImageCreateTrueColor</function> returns an image identifier
+ representing a black image of size <parameter>x_size</parameter>
+ by <parameter>y_size</parameter>.
+ </para>
+ <note><para>This function was added in PHP 4.0.6 and requires GD 2.0.1 or
+later</para></note> </refsect1>
</refentry>
-
+
<refentry id="function.imagetruecolortopalette">
<refnamediv>
<refname>ImageTrueColorToPalette</refname>
@@ -1095,34 +1091,33 @@
<funcprototype>
<funcdef>void <function>imagetruecolortopalette</function></funcdef>
<paramdef>resource <parameter>im</parameter></paramdef>
- <paramdef>bool <parameter>dither</parameter></paramdef>
- <paramdef>int <parameter>ncolors</parameter></paramdef>
+ <paramdef>bool <parameter>dither</parameter></paramdef>
+ <paramdef>int <parameter>ncolors</parameter></paramdef>
</funcprototype>
</funcsynopsis>
- <para>
+ <para>
<function>ImageTrueColorToPalette</function> converts a truecolor image
- to a palette image. The code for this function was originally drawn from
- the Independent JPEG Group library code, which is excellent. The code
- has been modified to preserve as much alpha channel information as
- possible in the resulting palette, in addition to preserving colors as
- well as possible. This does not work as well as might be hoped. It is
- usually best to simply produce a truecolor output image instead, which
- guarantees the highest output quality.
- </para>
- <para>
- <parameter>dither</parameter> indicates if the image should be dithered -
- if it is true then dithering will be used which will result in a more
- speckled image but with better color approximation.
- </para>
- <para>
- <parameter>ncolors</parameter> sets the maximum number of colors that
- should be retained in the palette.
- </para>
- <note><para>This function was added in PHP 4.0.6</para></note>
- <note><para>This function requires GD 2.0.1 or later</para></note>
+ to a palette image. The code for this function was originally drawn from
+ the Independent JPEG Group library code, which is excellent. The code
+ has been modified to preserve as much alpha channel information as
+ possible in the resulting palette, in addition to preserving colors as
+ well as possible. This does not work as well as might be hoped. It is
+ usually best to simply produce a truecolor output image instead, which
+ guarantees the highest output quality.
+ </para>
+ <para>
+ <parameter>dither</parameter> indicates if the image should be dithered -
+ if it is true then dithering will be used which will result in a more
+ speckled image but with better color approximation.
+ </para>
+ <para>
+ <parameter>ncolors</parameter> sets the maximum number of colors that
+ should be retained in the palette.
+ </para>
+ <note><para>This function was added in PHP 4.0.6 and requires GD 2.0.1 or
+later</para></note> </refsect1>
</refsect1>
</refentry>
-
+
<refentry id="function.imagecreatefromgif">
<refnamediv>
<refname>ImageCreateFromGIF</refname>
@@ -1140,16 +1135,16 @@
<function>ImageCreateFromGif</function> returns an image identifier
representing the image obtained from the given filename.
</para>
- <para>
+ <para>
<function>ImageCreateFromGif</function> returns an empty string
on failure. It also outputs an error message, which unfortunately
displays as a broken link in a browser. To ease debugging the
following example will produce an error GIF:
- <example>
- <title>
- Example to handle an error during creation (courtesy
- [EMAIL PROTECTED])
- </title>
+ <example>
+ <title>
+ Example to handle an error during creation (courtesy
+ [EMAIL PROTECTED])
+ </title>
<programlisting role="php">
function LoadGif ($imgname) {
$im = @ImageCreateFromGIF ($imgname); /* Attempt to open */
@@ -1157,9 +1152,9 @@
$im = ImageCreate (150, 30); /* Create a blank image */
$bgc = ImageColorAllocate ($im, 255, 255, 255);
$tc = ImageColorAllocate ($im, 0, 0, 0);
- ImageFilledRectangle ($im, 0, 0, 150, 30, $bgc);
+ ImageFilledRectangle ($im, 0, 0, 150, 30, $bgc);
/* Output an errmsg */
- ImageString($im, 1, 5, 5, "Error loading $imgname", $tc);
+ ImageString($im, 1, 5, 5, "Error loading $imgname", $tc);
}
return $im;
}
@@ -1175,7 +1170,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagecreatefromjpeg">
<refnamediv>
<refname>ImageCreateFromJPEG</refname>
@@ -1193,13 +1188,13 @@
<function>ImageCreateFromJPEG</function> returns an image identifier
representing the image obtained from the given filename.
</para>
- <para>
+ <para>
<function>ImagecreateFromJPEG</function> returns an empty string
on failure. It also outputs an error message, which unfortunately
displays as a broken link in a browser. To ease debugging the
following example will produce an error <acronym>JPEG</acronym>:
- <example>
- <title>
+ <example>
+ <title>
Example to handle an error during creation (courtesy
[EMAIL PROTECTED] )
</title>
@@ -1212,7 +1207,7 @@
$tc = ImageColorAllocate ($im, 0, 0, 0);
ImageFilledRectangle ($im, 0, 0, 150, 30, $bgc);
/* Output an errmsg */
- ImageString ($im, 1, 5, 5, "Error loading $imgname", $tc);
+ ImageString ($im, 1, 5, 5, "Error loading $imgname", $tc);
}
return $im;
}
@@ -1221,7 +1216,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagecreatefrompng">
<refnamediv>
<refname>ImageCreateFromPNG</refname>
@@ -1239,7 +1234,7 @@
<function>ImageCreateFromPNG</function> returns an image identifier
representing the image obtained from the given filename.
</para>
- <para>
+ <para>
<function>ImageCreateFromPNG</function> returns an empty string
on failure. It also outputs an error message, which unfortunately
displays as a broken link in a browser. To ease debugging the
@@ -1258,7 +1253,7 @@
$tc = ImageColorAllocate ($im, 0, 0, 0);
ImageFilledRectangle ($im, 0, 0, 150, 30, $bgc);
/* Output an errmsg */
- ImageString ($im, 1, 5, 5, "Error loading $imgname", $tc);
+ ImageString ($im, 1, 5, 5, "Error loading $imgname", $tc);
}
return $im;
}
@@ -1267,7 +1262,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagecreatefromwbmp">
<refnamediv>
<refname>ImageCreateFromWBMP</refname>
@@ -1285,7 +1280,7 @@
<function>ImageCreateFromWBMP</function> returns an image identifier
representing the image obtained from the given filename.
</para>
- <para>
+ <para>
<function>ImageCreateFromWBMP</function> returns an empty string
on failure. It also outputs an error message, which unfortunately
displays as a broken link in a browser. To ease debugging the
@@ -1304,7 +1299,7 @@
$tc = ImageColorAllocate ($im, 0, 0, 0);
ImageFilledRectangle ($im, 0, 0, 10, 10, $bgc);
/* Output an errmsg */
- ImageString ($im, 1, 5, 5, "Error loading $imgname", $tc);
+ ImageString ($im, 1, 5, 5, "Error loading $imgname", $tc);
}
return $im;
}
@@ -1313,7 +1308,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagecreatefromstring">
<refnamediv>
<refname>ImageCreateFromString</refname>
@@ -1333,7 +1328,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagedashedline">
<refnamediv>
<refname>ImageDashedLine</refname>
@@ -1352,19 +1347,19 @@
<paramdef>int <parameter>col</parameter></paramdef>
</funcprototype>
</funcsynopsis>
- <para>
+ <para>
<function>ImageDashedLine</function> draws a dashed line from
<parameter>x1</parameter>, <parameter>y1</parameter> to
<parameter>x2</parameter>, <parameter>y2</parameter> (top left is
0, 0) in image <parameter>im</parameter> of color
<parameter>col</parameter>.
</para>
- <para>
+ <para>
See also <function>ImageLine</function>.
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagedestroy">
<refnamediv>
<refname>ImageDestroy</refname>
@@ -1378,7 +1373,7 @@
<paramdef>int <parameter>im</parameter></paramdef>
</funcprototype>
</funcsynopsis>
- <para>
+ <para>
<function>ImageDestroy</function> frees any memory associated
with image <parameter>im</parameter>. <parameter>Im</parameter>
is the image identifier returned by the
@@ -1386,7 +1381,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagefill">
<refnamediv>
<refname>ImageFill</refname>
@@ -1403,7 +1398,7 @@
<paramdef>int <parameter>col</parameter></paramdef>
</funcprototype>
</funcsynopsis>
- <para>
+ <para>
<function>ImageFill</function> performs a flood fill starting at
coordinate <parameter>x</parameter>, <parameter>y</parameter>
(top left is 0, 0) with color <parameter>col</parameter> in the
@@ -1411,7 +1406,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagefilledpolygon">
<refnamediv>
<refname>ImageFilledPolygon</refname>
@@ -1428,7 +1423,7 @@
<paramdef>int <parameter>col</parameter></paramdef>
</funcprototype>
</funcsynopsis>
- <para>
+ <para>
<function>ImageFilledPolygon</function> creates a filled polygon
in image <parameter>im</parameter>.
<parameter>Points</parameter> is a PHP array containing the
@@ -1438,7 +1433,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagefilledrectangle">
<refnamediv>
<refname>ImageFilledRectangle</refname>
@@ -1457,7 +1452,7 @@
<paramdef>int <parameter>col</parameter></paramdef>
</funcprototype>
</funcsynopsis>
- <para>
+ <para>
<function>ImageFilledRectangle</function> creates a filled
rectangle of color <function>col</function> in image
<parameter>im</parameter> starting at upper left coordinates
@@ -1468,7 +1463,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagefilltoborder">
<refnamediv>
<refname>ImageFillToBorder</refname>
@@ -1486,7 +1481,7 @@
<paramdef>int <parameter>col</parameter></paramdef>
</funcprototype>
</funcsynopsis>
- <para>
+ <para>
<function>ImageFillToBorder</function> performs a flood fill
whose border color is defined by <parameter>border</parameter>.
The starting point for the fill is <parameter>x</parameter>,
@@ -1495,7 +1490,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagefontheight">
<refnamediv>
<refname>ImageFontHeight</refname>
@@ -1518,7 +1513,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagefontwidth">
<refnamediv>
<refname>ImageFontWidth</refname>
@@ -1532,16 +1527,16 @@
<paramdef>int <parameter>font</parameter></paramdef>
</funcprototype>
</funcsynopsis>
- <para>
+ <para>
Returns the pixel width of a character in font.
</para>
- <para>
+ <para>
See also <function>ImageFontHeight</function> and
<function>ImageLoadFont</function>.
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagegif">
<refnamediv>
<refname>ImageGIF</refname>
@@ -1553,7 +1548,7 @@
<funcprototype>
<funcdef>int <function>imagegif</function></funcdef>
<paramdef>int <parameter>im</parameter></paramdef>
- <paramdef>string
+ <paramdef>string
<parameter><optional>filename</optional></parameter>
</paramdef>
</funcprototype>
@@ -1626,18 +1621,18 @@
ImageGif($im);
}
elseif (ImageTypes() & IMG_JPG) {
-... etc.</programlisting>
+ ... etc.</programlisting>
</informalexample>
</para>
</note>
</para>
<para>
- See also <function>ImagePNG</function>, <function>ImageWBMP</function>,
+ See also <function>ImagePNG</function>, <function>ImageWBMP</function>,
<function>ImageJPEG</function>, <function>ImageTypes</function>.
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagepng">
<refnamediv>
<refname>ImagePNG</refname>
@@ -1649,7 +1644,7 @@
<title>Description</title>
<funcsynopsis>
<funcprototype>
- <funcdef>int
+ <funcdef>int
<function>imagepng</function>
</funcdef>
<paramdef>int <parameter>im</parameter></paramdef>
@@ -1671,12 +1666,12 @@
</informalexample>
</para>
<para>
- See also <function>ImageGIF</function>, <function>ImageWBMP</function>,
+ See also <function>ImageGIF</function>, <function>ImageWBMP</function>,
<function>ImageJPEG</function>, <function>ImageTypes</function>.
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagejpeg">
<refnamediv>
<refname>ImageJPEG</refname>
@@ -1688,10 +1683,10 @@
<funcprototype>
<funcdef>int <function>imagejpeg</function></funcdef>
<paramdef>int <parameter>im</parameter></paramdef>
- <paramdef>string
+ <paramdef>string
<parameter><optional>filename</optional></parameter>
</paramdef>
- <paramdef>int
+ <paramdef>int
<parameter><optional>quality</optional></parameter>
</paramdef>
</funcprototype>
@@ -1713,16 +1708,16 @@
<para>
JPEG support is only available in PHP if PHP was compiled
against GD-1.8 or later.
- </para>
+ </para>
</note>
</para>
<para>
- See also <function>ImagePNG</function>, <function>ImageGIF</function>,
+ See also <function>ImagePNG</function>, <function>ImageGIF</function>,
<function>ImageWBMP</function>, <function>ImageTypes</function>.
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagewbmp">
<refnamediv>
<refname>ImageWBMP</refname>
@@ -1734,7 +1729,7 @@
<funcprototype>
<funcdef>int <function>imageWBMP</function></funcdef>
<paramdef>int <parameter>im</parameter></paramdef>
- <paramdef>string
+ <paramdef>string
<parameter><optional>filename</optional></parameter>
</paramdef>
</funcprototype>
@@ -1747,24 +1742,24 @@
</para>
<para>
The filename argument is optional, and if left off, the raw image
- stream will be output directly.
- By sending an <acronym>image/vnd.wap.wbmp</acronym> content-type
- using <function>header</function>, you can create
+ stream will be output directly.
+ By sending an <acronym>image/vnd.wap.wbmp</acronym> content-type
+ using <function>header</function>, you can create
a PHP script that outputs WBMP images directly.
<note>
<para>
WBMP support is only available in PHP if PHP was compiled
against GD-1.8 or later.
- </para>
+ </para>
</note>
</para>
<para>
- See also <function>ImagePNG</function>, <function>ImageGIF</function>,
+ See also <function>ImagePNG</function>, <function>ImageGIF</function>,
<function>ImageJPEG</function>, <function>ImageTypes</function>.
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imageinterlace">
<refnamediv>
<refname>ImageInterlace</refname>
@@ -1776,7 +1771,7 @@
<funcprototype>
<funcdef>int <function>imageinterlace</function></funcdef>
<paramdef>int <parameter>im</parameter></paramdef>
- <paramdef>int
+ <paramdef>int
<parameter><optional>interlace</optional></parameter>
</paramdef>
</funcprototype>
@@ -1792,7 +1787,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imageline">
<refnamediv>
<refname>ImageLine</refname>
@@ -1811,19 +1806,19 @@
<paramdef>int <parameter>col</parameter></paramdef>
</funcprototype>
</funcsynopsis>
- <para>
+ <para>
<function>ImageLine</function> draws a line from
<parameter>x1</parameter>, <parameter>y1</parameter> to
<parameter>x2</parameter>, <parameter>y2</parameter> (top left is
- 0, 0) in image im of color <parameter>col</parameter>.
+ 0, 0) in image im of color <parameter>col</parameter>.
</para>
- <para>
+ <para>
See also <function>ImageCreate</function> and
<function>ImageColorAllocate</function>.
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imageloadfont">
<refnamediv>
<refname>ImageLoadFont</refname>
@@ -1852,43 +1847,43 @@
<title>Font file format</title>
<tgroup cols="3">
<thead>
- <row>
- <entry>byte position</entry>
- <entry>C data type</entry>
- <entry>description</entry>
- </row>
+ <row>
+ <entry>byte position</entry>
+ <entry>C data type</entry>
+ <entry>description</entry>
+ </row>
</thead>
<tbody>
- <row>
- <entry>byte 0-3</entry>
- <entry>int</entry>
- <entry>number of characters in the font</entry>
- </row>
- <row>
- <entry>byte 4-7</entry>
- <entry>int</entry>
- <entry>
- value of first character in the font (often 32 for space)
- </entry>
- </row>
- <row>
- <entry>byte 8-11</entry>
- <entry>int</entry>
- <entry>pixel width of each character</entry>
- </row>
- <row>
- <entry>byte 12-15</entry>
- <entry>int</entry>
- <entry>pixel height of each character</entry>
- </row>
- <row>
- <entry>byte 16-</entry>
- <entry>char</entry>
- <entry>
- array with character data, one byte per pixel in each
- character, for a total of (nchars*width*height) bytes.
- </entry>
- </row>
+ <row>
+ <entry>byte 0-3</entry>
+ <entry>int</entry>
+ <entry>number of characters in the font</entry>
+ </row>
+ <row>
+ <entry>byte 4-7</entry>
+ <entry>int</entry>
+ <entry>
+ value of first character in the font (often 32 for space)
+ </entry>
+ </row>
+ <row>
+ <entry>byte 8-11</entry>
+ <entry>int</entry>
+ <entry>pixel width of each character</entry>
+ </row>
+ <row>
+ <entry>byte 12-15</entry>
+ <entry>int</entry>
+ <entry>pixel height of each character</entry>
+ </row>
+ <row>
+ <entry>byte 16-</entry>
+ <entry>char</entry>
+ <entry>
+ array with character data, one byte per pixel in each
+ character, for a total of (nchars*width*height) bytes.
+ </entry>
+ </row>
</tbody>
</tgroup>
</table>
@@ -1899,7 +1894,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagepolygon">
<refnamediv>
<refname>ImagePolygon</refname>
@@ -1916,19 +1911,19 @@
<paramdef>int <parameter>col</parameter></paramdef>
</funcprototype>
</funcsynopsis>
- <para>
+ <para>
<function>ImagePolygon</function> creates a polygon in image id.
<parameter>Points</parameter> is a PHP array containing the
polygon's vertices, ie. points[0] = x0, points[1] = y0, points[2]
= x1, points[3] = y1, etc. <parameter>Num_points</parameter> is
the total number of vertices.
</para>
- <para>
+ <para>
See also <function>imagecreate</function>.
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagepsbbox">
<refnamediv>
<refname>ImagePSBBox</refname>
@@ -1986,26 +1981,26 @@
<para>
This function returns an array containing the following elements:
<informaltable>
- <tgroup cols="2">
- <tbody>
- <row>
- <entry>0</entry>
- <entry>lower left x-coordinate</entry>
- </row>
- <row>
- <entry>1</entry>
- <entry>lower left y-coordinate</entry>
- </row>
- <row>
- <entry>2</entry>
- <entry>upper right x-coordinate</entry>
- </row>
- <row>
- <entry>3</entry>
- <entry>upper right y-coordinate</entry>
- </row>
- </tbody>
- </tgroup>
+ <tgroup cols="2">
+ <tbody>
+ <row>
+ <entry>0</entry>
+ <entry>lower left x-coordinate</entry>
+ </row>
+ <row>
+ <entry>1</entry>
+ <entry>lower left y-coordinate</entry>
+ </row>
+ <row>
+ <entry>2</entry>
+ <entry>upper right x-coordinate</entry>
+ </row>
+ <row>
+ <entry>3</entry>
+ <entry>upper right y-coordinate</entry>
+ </row>
+ </tbody>
+ </tgroup>
</informaltable>
</para>
<para>
@@ -2013,11 +2008,11 @@
</para>
</refsect1>
</refentry>
-
-<!-- The function in t1lib which this function uses seems to be buggy...
-Currently, just comment out everywhere in the docs and source until time
-permits to find a solution.
-
+
+ <!-- The function in t1lib which this function uses seems to be buggy...
+ Currently, just comment out everywhere in the docs and source until time
+ permits to find a solution.
+
<refentry id="function.imagepscopyfont">
<refnamediv>
<refname>ImagePSCopyFont</refname>
@@ -2058,8 +2053,8 @@
</para>
</refsect1>
</refentry>
--->
-
+ -->
+
<refentry id="function.imagepsencodefont">
<refnamediv>
<refname>ImagePSEncodeFont</refname>
@@ -2094,7 +2089,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagepsfreefont">
<refnamediv>
<refname>ImagePSFreeFont</refname>
@@ -2113,7 +2108,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagepsloadfont">
<refnamediv>
<refname>ImagePSLoadFont</refname>
@@ -2138,7 +2133,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagepsextendfont">
<refnamediv>
<refname>ImagePsExtendFont</refname>
@@ -2153,10 +2148,10 @@
<funcdef>bool
<function>imagepsextendfont</function>
</funcdef>
- <paramdef>int
+ <paramdef>int
<parameter>font_index</parameter>
</paramdef>
- <paramdef>double
+ <paramdef>double
<parameter>extend</parameter>
</paramdef>
</funcprototype>
@@ -2180,13 +2175,13 @@
<title>Description</title>
<funcsynopsis>
<funcprototype>
- <funcdef>bool
+ <funcdef>bool
<function>imagepsslantfont</function>
</funcdef>
- <paramdef>int
+ <paramdef>int
<parameter>font_index</parameter>
</paramdef>
- <paramdef>double
+ <paramdef>double
<parameter>slant</parameter>
</paramdef>
</funcprototype>
@@ -2198,7 +2193,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagepstext">
<refnamediv>
<refname>ImagePSText</refname>
@@ -2219,24 +2214,24 @@
<paramdef>int <parameter>background</parameter></paramdef>
<paramdef>int <parameter>x</parameter></paramdef>
<paramdef>int <parameter>y</parameter></paramdef>
- <paramdef>int
+ <paramdef>int
<parameter>
- <optional>space</optional>
+ <optional>space</optional>
</parameter>
</paramdef>
- <paramdef>int
+ <paramdef>int
<parameter>
- <optional>tightness</optional>
+ <optional>tightness</optional>
</parameter>
</paramdef>
- <paramdef>float
+ <paramdef>float
<parameter>
- <optional>angle</optional>
+ <optional>angle</optional>
</parameter>
</paramdef>
- <paramdef>int
+ <paramdef>int
<parameter>
- <optional>antialias_steps</optional>
+ <optional>antialias_steps</optional>
</parameter>
</paramdef>
</funcprototype>
@@ -2296,33 +2291,33 @@
<para>
This function returns an array containing the following elements:
<informaltable>
- <tgroup cols="2">
- <tbody>
- <row>
- <entry>0</entry>
- <entry>lower left x-coordinate</entry>
- </row>
- <row>
- <entry>1</entry>
- <entry>lower left y-coordinate</entry>
- </row>
- <row>
- <entry>2</entry>
- <entry>upper right x-coordinate</entry>
- </row>
- <row>
- <entry>3</entry>
- <entry>upper right y-coordinate</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable></para>
+ <tgroup cols="2">
+ <tbody>
+ <row>
+ <entry>0</entry>
+ <entry>lower left x-coordinate</entry>
+ </row>
+ <row>
+ <entry>1</entry>
+ <entry>lower left y-coordinate</entry>
+ </row>
+ <row>
+ <entry>2</entry>
+ <entry>upper right x-coordinate</entry>
+ </row>
+ <row>
+ <entry>3</entry>
+ <entry>upper right y-coordinate</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable></para>
<para>
See also <function>imagepsbbox</function>.
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagerectangle">
<refnamediv>
<refname>ImageRectangle</refname>
@@ -2341,7 +2336,7 @@
<paramdef>int <parameter>col</parameter></paramdef>
</funcprototype>
</funcsynopsis>
- <para>
+ <para>
<function>ImageRectangle</function> creates a rectangle of color
col in image im starting at upper left coordinate x1, y1 and
ending at bottom right coordinate x2, y2. 0, 0 is the top left
@@ -2349,7 +2344,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagesetpixel">
<refnamediv>
<refname>ImageSetPixel</refname>
@@ -2366,19 +2361,19 @@
<paramdef>int <parameter>col</parameter></paramdef>
</funcprototype>
</funcsynopsis>
- <para>
+ <para>
<function>ImageSetPixel</function> draws a pixel at
<parameter>x</parameter>, <parameter>y</parameter> (top left is
0, 0) in image <parameter>im</parameter> of color
<parameter>col</parameter>.
- </para>
- <para>
+ </para>
+ <para>
See also <function>ImageCreate</function> and
<function>ImageColorAllocate</function>.
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagesetbrush">
<refnamediv>
<refname>ImageSetBrush</refname>
@@ -2394,21 +2389,21 @@
</funcprototype>
</funcsynopsis>
<para>
- <function>ImageSetBrush</function> sets the brush image to be
- used by all line drawing functions (such as <function>ImageLine</function>
- and <function>ImagePolygon</function>) when drawing with the special
- colors IMG_COLOR_BRUSHED or IMG_COLOR_STYLEDBRUSHED.
- </para>
- <note>
- <para>You need not take special action when you are finished with a brush,
but if you
- destroy the brush image, you must not use the IMG_COLOR_BRUSHED or
IMG_COLOR_STYLEDBRUSHED
- colors until you have set a new brush image!</para>
- </note>
- <note><para>This function was added in PHP 4.0.6</para></note>
+ <function>ImageSetBrush</function> sets the brush image to be
+ used by all line drawing functions (such as <function>ImageLine</function>
+ and <function>ImagePolygon</function>) when drawing with the special
+ colors <literal>IMG_COLOR_BRUSHED</literal> or
+<literal>IMG_COLOR_STYLEDBRUSHED</literal>.
+ </para>
+ <note>
+ <para>You need not take special action when you are finished with a brush, but
+if you
+ destroy the brush image, you must not use the
+<literal>IMG_COLOR_BRUSHED</literal> or <literal>IMG_COLOR_STYLEDBRUSHED</literal>
+ colors until you have set a new brush image!</para>
+ </note>
+ <note><para>This function was added in PHP 4.0.6</para></note>
</refsect1>
</refentry>
-
-
+
+
<refentry id="function.imagesettile">
<refnamediv>
<refname>ImageSetTile</refname>
@@ -2424,28 +2419,28 @@
</funcprototype>
</funcsynopsis>
<para>
- <function>ImageSetTile</function> sets the tile image to be
- used by all region filling functions (such as <function>ImageFill</function>
- and <function>ImageFilledPolygon</function>) when filling with the special
- color IMG_COLOR_TILED.
- </para>
- <para>
- A tile is an image used to fill an area with a repeated pattern.
<emphasis>Any</emphasis>
- GD image can be used as a tile, and by setting the transparent color index
of the tile
- image with <function>ImageColorTransparent</function>, a tile allows certain
parts
- of the underlying area to shine through can be created.
- </para>
- <note>
- <para>You need not take special action when you are finished with a tile,
but if you
- destroy the tile image, you must not use the IMG_COLOR_TILED color until you
have
- set a new tile image!</para>
- </note>
- <note><para>This function was added in PHP 4.0.6</para></note>
+ <function>ImageSetTile</function> sets the tile image to be
+ used by all region filling functions (such as <function>ImageFill</function>
+ and <function>ImageFilledPolygon</function>) when filling with the special
+ color <literal>IMG_COLOR_TILED</literal>.
+ </para>
+ <para>
+ A tile is an image used to fill an area with a repeated pattern.
+<emphasis>Any</emphasis>
+ GD image can be used as a tile, and by setting the transparent color index of
+the tile
+ image with <function>ImageColorTransparent</function>, a tile allows certain
+parts
+ of the underlying area to shine through can be created.
+ </para>
+ <note>
+ <para>You need not take special action when you are finished with a tile, but if
+you
+ destroy the tile image, you must not use the <literal>IMG_COLOR_TILED</literal>
+color until you have
+ set a new tile image!</para>
+ </note>
+ <note><para>This function was added in PHP 4.0.6</para></note>
</refsect1>
</refentry>
-
-
-
+
+
+
<refentry id="function.imagesetthickness">
<refnamediv>
<refname>ImageSetThickness</refname>
@@ -2460,16 +2455,16 @@
<paramdef>int <parameter>thickness</parameter></paramdef>
</funcprototype>
</funcsynopsis>
- <para>
+ <para>
<function>ImageSetThickness</function> sets the thickness of the lines
- drawn when drawing rectangles, polygons, ellipses etc. etc. to
- <parameter>thickness</parameter> pixels.
- </para>
- <note><para>This function was added in PHP 4.0.6 and requires GD 2.0.1 or
later</para></note>
+ drawn when drawing rectangles, polygons, ellipses etc. etc. to
+ <parameter>thickness</parameter> pixels.
+ </para>
+ <note><para>This function was added in PHP 4.0.6 and requires GD 2.0.1 or
+later</para></note>
</refsect1>
</refentry>
-
-
+
+
<refentry id="function.imagestring">
<refnamediv>
<refname>ImageString</refname>
@@ -2488,20 +2483,20 @@
<paramdef>int <parameter>col</parameter></paramdef>
</funcprototype>
</funcsynopsis>
- <para>
+ <para>
<function>ImageString</function> draws the string
<parameter>s</parameter> in the image identified by
<parameter>im</parameter> at coordinates
<parameter>x</parameter>, <parameter>y</parameter> (top left is
0, 0) in color <parameter>col</parameter>. If font is 1, 2, 3, 4
- or 5, a built-in font is used.
- </para>
- <para>
+ or 5, a built-in font is used.
+ </para>
+ <para>
See also <function>ImageLoadFont</function>.
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagestringup">
<refnamediv>
<refname>ImageStringUp</refname>
@@ -2520,20 +2515,20 @@
<paramdef>int <parameter>col</parameter></paramdef>
</funcprototype>
</funcsynopsis>
- <para>
+ <para>
<function>ImageStringUp</function> draws the string
<parameter>s</parameter> vertically in the image identified by
<parameter>im</parameter> at coordinates
<parameter>x</parameter>, <parameter>y</parameter> (top left is
0, 0) in color <parameter>col</parameter>. If font is 1, 2, 3, 4
- or 5, a built-in font is used.
- </para>
- <para>
+ or 5, a built-in font is used.
+ </para>
+ <para>
See also <function>ImageLoadFont</function>.
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagesx">
<refnamediv>
<refname>ImageSX</refname>
@@ -2547,17 +2542,17 @@
<paramdef>int <parameter>im</parameter></paramdef>
</funcprototype>
</funcsynopsis>
- <para>
+ <para>
<function>ImageSX</function> returns the width of the image
identified by <parameter>im</parameter>.
</para>
- <para>
+ <para>
See also <function>ImageCreate</function> and
<function>ImageSY</function>.
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagesy">
<refnamediv>
<refname>ImageSY</refname>
@@ -2574,14 +2569,14 @@
<para>
<function>ImageSY</function> returns the height of the image
identified by <parameter>im</parameter>.
- </para>
+ </para>
<para>
See also <function>ImageCreate</function> and
<function>ImageSX</function>.
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagettfbbox">
<refnamediv>
<refname>ImageTTFBBox</refname>
@@ -2604,84 +2599,84 @@
This function calculates and returns the bounding box in pixels
for a TrueType text.
<variablelist>
- <varlistentry>
- <term>
- <parameter>text</parameter>
- </term>
- <listitem>
- <simpara>The string to be measured.</simpara>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>
- <parameter>size</parameter>
- </term>
- <listitem>
- <simpara>The font size in pixels.</simpara>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>
- <parameter>fontfile</parameter>
- </term>
- <listitem>
- <simpara>
- The name of the TrueType font file. (Can also be an URL.)
- </simpara>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>
- <parameter>angle</parameter>
- </term>
- <listitem>
- <simpara>
- Angle in degrees in which <parameter>text</parameter> will be
- measured.
- </simpara>
- </listitem>
- </varlistentry>
+ <varlistentry>
+ <term>
+ <parameter>text</parameter>
+ </term>
+ <listitem>
+ <simpara>The string to be measured.</simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <parameter>size</parameter>
+ </term>
+ <listitem>
+ <simpara>The font size in pixels.</simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <parameter>fontfile</parameter>
+ </term>
+ <listitem>
+ <simpara>
+ The name of the TrueType font file. (Can also be an URL.)
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <parameter>angle</parameter>
+ </term>
+ <listitem>
+ <simpara>
+ Angle in degrees in which <parameter>text</parameter> will be
+ measured.
+ </simpara>
+ </listitem>
+ </varlistentry>
</variablelist>
<function>ImageTTFBBox</function> returns an array with 8
elements representing four points making the bounding box of the
text:
<informaltable>
- <tgroup cols="2">
- <tbody>
- <row>
- <entry>0</entry>
- <entry>lower left corner, X position</entry>
- </row>
- <row>
- <entry>1</entry>
- <entry>lower left corner, Y position</entry>
- </row>
- <row>
- <entry>2</entry>
- <entry>lower right corner, X position</entry>
- </row>
- <row>
- <entry>3</entry>
- <entry>lower right corner, Y position</entry>
- </row>
- <row>
- <entry>4</entry>
- <entry>upper right corner, X position</entry>
- </row>
- <row>
- <entry>5</entry>
- <entry>upper right corner, Y position</entry>
- </row>
- <row>
- <entry>6</entry>
- <entry>upper left corner, X position</entry>
- </row>
- <row>
- <entry>7</entry>
- <entry>upper left corner, Y position</entry>
- </row>
- </tbody>
- </tgroup>
+ <tgroup cols="2">
+ <tbody>
+ <row>
+ <entry>0</entry>
+ <entry>lower left corner, X position</entry>
+ </row>
+ <row>
+ <entry>1</entry>
+ <entry>lower left corner, Y position</entry>
+ </row>
+ <row>
+ <entry>2</entry>
+ <entry>lower right corner, X position</entry>
+ </row>
+ <row>
+ <entry>3</entry>
+ <entry>lower right corner, Y position</entry>
+ </row>
+ <row>
+ <entry>4</entry>
+ <entry>upper right corner, X position</entry>
+ </row>
+ <row>
+ <entry>5</entry>
+ <entry>upper right corner, Y position</entry>
+ </row>
+ <row>
+ <entry>6</entry>
+ <entry>upper left corner, X position</entry>
+ </row>
+ <row>
+ <entry>7</entry>
+ <entry>upper left corner, Y position</entry>
+ </row>
+ </tbody>
+ </tgroup>
</informaltable>
The points are relative to the <emphasis>text</emphasis>
regardless of the angle, so "upper left" means in the top
@@ -2696,7 +2691,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagettftext">
<refnamediv>
<refname>ImageTTFText</refname>
@@ -2774,7 +2769,7 @@
$im = imagecreate (400, 30);
$black = ImageColorAllocate ($im, 0, 0, 0);
$white = ImageColorAllocate ($im, 255, 255, 255);
-ImageTTFText ($im, 20, 0, 10, 20, $white, "/path/arial.ttf",
+ImageTTFText ($im, 20, 0, 10, 20, $white, "/path/arial.ttf",
"Testing... Omega: &#937;");
ImageGif ($im);
ImageDestroy ($im);
@@ -2791,7 +2786,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.imagetypes">
<refnamediv>
<refname>ImageTypes</refname>
@@ -2810,8 +2805,8 @@
<para>
This function returns a bit-field corresponding to the image
formats supported by the version of GD linked into PHP. The
- following bits are returned, IMG_GIF | IMG_JPG | IMG_PNG |
- IMG_WBMP. To check for PNG support, for example, do this:
+ following bits are returned, <literal>IMG_GIF</literal> |
+<literal>IMG_JPG</literal> | <literal>IMG_PNG</literal> |
+ <literal>IMG_WBMP</literal>. To check for PNG support, for example, do this:
<example>
<title>ImageTypes</title>
<programlisting role="php">
@@ -2825,7 +2820,7 @@
</para>
</refsect1>
</refentry>
-
+
<refentry id="function.read-exif-data">
<refnamediv>
<refname>read_exif_data</refname>
@@ -2841,13 +2836,13 @@
</funcsynopsis>
<para>
The <function>read_exif_data</function> function reads the
- EXIF headers from a JPEG image file. It returns an associative
- array where the indexes are the Exif header names and the values
- are the values associated with those Exif headers. Exif headers
- tend to be present in JPEG images generated by digital cameras, but
- unfortunately each digital camera maker has a different idea of how
- to actually tag their images, so you can't always rely on a specific
- Exif header being present.
+ EXIF headers from a JPEG image file. It returns an associative
+ array where the indexes are the Exif header names and the values
+ are the values associated with those Exif headers. Exif headers
+ tend to be present in JPEG images generated by digital cameras, but
+ unfortunately each digital camera maker has a different idea of how
+ to actually tag their images, so you can't always rely on a specific
+ Exif header being present.
<example>
<title>read_exif_data</title>
<programlisting role="php">
@@ -2894,22 +2889,22 @@
</para>
</refsect1>
</refentry>
-
+
</reference>
-
-<!-- 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
-sgml-parent-document:nil
-sgml-default-dtd-file:"../../manual.ced"
-sgml-exposed-tags:nil
-sgml-local-catalogs:nil
-sgml-local-ecat-files:nil
-End:
--->
+
+ <!-- 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
+ sgml-parent-document:nil
+ sgml-default-dtd-file:"../../manual.ced"
+ sgml-exposed-tags:nil
+ sgml-local-catalogs:nil
+ sgml-local-ecat-files:nil
+ End:
+ -->