PHP is not limited to creating just HTML output. It can also be
used to create and manipulate image files in a variety of different
image formats, including gif, png, jpg, wbmp, and xpm. Even more
convenient, PHP can output image streams directly to a browser. You
will need to compile PHP with the GD library of image functions for
this to work. GD and PHP may also require other libraries, depending
on which image formats you want to work with.
You can use the image functions in PHP to get the size of
JPEG, GIF,
PNG, SWF,
TIFF and JPEG2000 images.
Замечание:
Read requirements section about how to expand image capabilities
to read, write and modify images and to read meta data of pictures
taken by digital cameras.
If you have the GD library (available at http://www.boutell.com/gd/) you will also be able to create
and manipulate images.
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 and less than gd-2.0.28 support PNG, not GIF. GIF
support was re-enabled in gd-2.0.28.
Замечание:
Since PHP 4.3 there is a bundled version of the GD lib. This bundled
version has some additional features like alpha blending, and should
be used in preference to the external library
since its codebase is better maintained and more stable.
You may wish to enhance GD to handle more image formats.
Таблица 1. Supported image formats
Image format
Library to download
Notes
gif
Only supported in GD versions older than gd-1.6 and newer than
gd-2.0.28. Read-only
GIF support is available with PHP 4.3.0 and the bundled
GD-library. Write support is avaliable since
PHP 4.3.9 and PHP 5.0.1.
If you have PHP compiled with --enable-exif
you are able to work with information stored in headers of
JPEG and TIFF images. This way you can
read meta data generated by digital cameras as mentioned above. These
functions do not require the GD library.
To enable GD-support configure PHP
--with-gd[=DIR], where DIR is the GD base
install directory. To use the recommended bundled version of the GD library
(which was first bundled in PHP 4.3.0), use the configure option
--with-gd.
GD library requires libpng and
libjpeg to compile.
In Windows, you'll include the GD2 DLL php_gd2.dll as
an extension in php.ini. The GD1 DLL php_gd.dll was
removed in PHP 4.3.2. Also note that the preferred truecolor image
functions, such as imagecreatetruecolor(), require GD2.
Замечание:
To enable exif support in Windows, php_mbstring.dll must be loaded prior
to php_exif.dll in php.ini.
To disable GD support in PHP 3 add
--without-gd to your configure line.
Enhance the capabilities of GD to handle more image formats by specifying
the --with-XXXX configure switch to your PHP configure
line.
Таблица 3. Supported image formats
Image Format
Configure Switch
jpeg-6b
To enable support for jpeg-6b add
--with-jpeg-dir=DIR.
png
To enable support for png add
--with-png-dir=DIR. Note, libpng
requires the zlib library,
therefore add --with-zlib-dir[=DIR]
to your configure line.
xpm
To enable support for xpm add
--with-xpm-dir=DIR. If configure
is not able to find the required libraries, you may add the path to
your X11 libraries.
Замечание:
When compiling PHP with libpng, you must use the same version that was
linked with the GD library.
Enhance the capabilities of GD to deal with different fonts by specifying
the --with-XXXX configure switch to your PHP configure
line.
Таблица 4. Supported font libraries
Font library
Configure Switch
FreeType 1.x
To enable support for FreeType 1.x add
--with-ttf[=DIR].
FreeType 2
To enable support for FreeType 2 add
--with-freetype-dir=DIR.
T1lib
To enable support for T1lib (Type 1 fonts) add
--with-t1lib[=DIR].
Native TrueType string function
To enable support for native TrueType string function add
--enable-gd-native-ttf.
Перечисленные ниже константы определены данным расширением и могут быть
доступны только в том случае, если PHP был собран с
поддержкой этого расширения или же в том случае, если
данное расширение подгружается во время выполнения.
This example would be called from a page with a tag like: <img
src="button.php?text=text">. The above button.php script
then takes this "text" string and overlays it on top of a
base image which in this case is "images/button1.png"
and outputs the resulting image. This is a very convenient way to
avoid having to draw new button images every time you want to
change the text of a button. With this method they are
dynamically generated.
Содержание
gd_info -- Retrieve information about the currently installed GD library