安装/配置

目录

需求

如果你有 GD 库(可从 » http://www.libgd.org/ 获得), 你就可以创建 和处理图像。

可以处理的图像格式由你所使用的 GD 库版本 以及 GD 库可能需要的其他库决定。 在 gd-2.0.28 中,提供了对 GIF 格式的支持。

Note: 要求 libgd-2.0.4 或更高版本, PHP 5.5 要求 libgd-2.1.0 或更高版本。 你也可以使用 PHP 中绑定的 GD 库。

你可能希望增强 GD 库以处理更多的图像格式。

图像格式需要下载的库备注
gif 仅在 gd-2.0.28 及更高版本的 GD 库提供支持, 从 PHP 5.0.1 开始支持 写入 操作。
jpeg» http://www.ijg.org/在构建 PHP 之前, 需要在配置步骤使用 --enable-shared 选项来构建 jpeg 库。 如果不使用此选项,那么在构建 PHP 时的配置环节, 会产生 libjpeg.(a|so) not found 的错误。
png» http://www.libpng.org/pub/png/libpng.html
xpm» ftp://metalab.unc.edu/pub/Linux/libs/X/!INDEX.html如果你的系统中已经安装了 X 环境, 就已经包含这个库了。

你可能希望增强 GD 库来使用不同的字体。 下列字体库是受支持的:

字体库下载备注
FreeType 1.x» http://www.freetype.org/从 PHP 5.3.0 开始,不再提供对 FreeType 1.x 的支持。
FreeType 2» http://www.freetype.org/ 
T1lib» ftp://sunsite.unc.edu/pub/Linux/libs/graphics/)支持 Postscript Type 1 字体(在 PHP 7.0.0 中移除)。

安装

要激活 GD 支持,配置 PHP 时加上 --with-gd[=DIR],DIR 是 GD 的基本安装目录。要使用推荐的绑定的 GD 库版本(首次绑定于 PHP 4.3.0),使用 --with-gd。要编译 GD 库,需要libpnglibjpeg

在 Windows 中,需要将 GD2 的 DLL 文件 php_gd2.dll 作为一个扩展包含在 php.ini 中。GD1 的 DLL 文件 php_gd.dll 在 PHP 4.3.2 中被删除了。此外要注意首选的真彩色图像函数,例如 imagecreatetruecolor,需要 GD2。

Note:

要在 Windows 下启用 exif,在 php.ini 中 php_mbstring.dll 必须在 php_exif.dll 之前加载。

要在 PHP 3 中禁止 GD 支持,在配置时加上 --without-gd

要增强 GD 的能力以处理更多的图像格式,在配置 PHP 时指定 --with-XXXX 的配置开关。

图像格式配置开关
jpeg-6b要激活 jpeg-6b 的支持,加上 --with-jpeg-dir=DIR.
png要激活 png 的支持,加上 --with-png-dir=DIR。注意,libpng 需要 zlib library,因此配置中还要加上 --with-zlib-dir[=DIR]
xpm要激活 xpm 的支持,加上 --with-xpm-dir=DIR。如果配置时提示找不到所需要的库,可以加上到 X11 库的路径。

Note: 当把 PHP 和 libpng 一起编译时,必须使用和 GD 库连接的同一个版本。

要增强 GD 的能力以处理更多的字体,在配置 PHP 时指定 --with-XXXX 的配置开关。

字库配置开关
FreeType 1.x要激活 FreeType 1.x 的支持,加上 --with-ttf[=DIR]
FreeType 2要激活 FreeType 2 的支持,加上 --with-freetype-dir=DIR
T1lib要激活 T1lib(Type 1 字体),加上 --with-t1lib[=DIR]
本地 TrueType 字符串函数要激活本地 TrueType 字符串函数的支持,加上 --enable-gd-native-ttf

运行时配置

这些函数的行为受 php.ini 中的设置影响。

名字默认可修改范围Changelog
gd.jpeg_ignore_warning"0"PHP_INI_ALLAvailable since PHP 5.1.3.

有关 PHP_INI_* 样式的更多详情与定义,见 配置可被设定范围

这是配置指令的简短说明。

gd.jpeg_ignore_warning bool
Ignore warnings created by jpeg2wbmp and imagecreatefromjpeg

See also the exif configuration directives.

Warning

Image functions are very memory intensive. Be sure to set memory_limit high enough.

资源类型

本扩展定义了 2 个资源类型:

名称描述说明
gd图像资源,由 imagecreatefrompng 等函数使用 
gd fontimageloadfont 函数内部创建的字体资源 
gd PS fontPostScript Type 1 字体资源,由 imagepsloadfont 函数返回在 PHP 7.0.0 中被移除。
gd PS encodingPostScript Type 1 编码资源,由 imagepsencodefont 函数返回在 PHP 7.0.0 中被移除。