Выбрать главу

gd_info

Возвращает информацию о библиотеке GD.

Синтаксис:

array gd_info(void)

Функция возвращает массив, содержащий версию и параметры установленной библиотеки GD.

<?php

$gd=gd_info();

echo "<pre>";

print_r($gd);

echo "</pre>";

?>

Приведенный пример выведет примерно следующее:

Array( [GD Version] => bundled (2.0.22 compatible) [FreeType Support] => 1 [FreeType Linkage] => with freetype [T1Lib Support] => [GIF Read Support] => 1 [GIF Create Support] => [JPG Support] => 1 [PNG Support] => 1 [WBMP Support] => 1 [XBM Support] => 1 [JIS-mapped Japanese Font Support] => )

image_type_to_mime_type

Возвращает Mime-Type типа изображения.

Синтаксис:

string image_type_to_mime_type( int imagetype)

Функция возвращает MIME-тип картинки, заданный константой в параметре imagetype.

<?php

header("Content-type: " . image_type_to_mime_type(IMAGETYPE_PNG));

?>

Список констант и возвращаемых значений функции image_type_to_mime_type():

Данная функция не требует наличия библиотеки GD.

Манипулирование изображениями

imageCreate

Создание пустой картинки.

Синтаксис:

int imageCreate(int x, int y)

Создает пустую картинку размером x на y точек и возвращает ее идентификатор. После того, как картинка создана, вся работа с ней осуществляется именно через этот идентификатор, по аналогии с тем, как мы работаем с файлом через его дескриптор.

Пример:

Создание новой картинки при помощи GD и вывод ее в экран браузера:

<?php

header ("Content-type: image/png");

$im = @imagecreate (50, 100)

or die ("Не удается открыть новую картинку!");

$background_color = imagecolorallocate ($im, 255, 255, 255);

$text_color = imagecolorallocate ($im, 233, 14, 91);

imagestring ($im, 1, 5, 5, "A Simple Text String", $text_color);

imagepng ($im);

?>

imageCreateFromPng

Создание рисунка из файла PNG.

Синтаксис:

int imageCreateFromPng(string filename)

Эта функция загружают изображения из файла PNG в память и возвращает его идентификатор. Как и после вызова imageCreate(), дальнейшая работа с картинкой возможна только через этот идентификатор. При загрузке с диска изображение распаковывается и храниться в память уже в неупакованном формате, для того чтобы можно было максимально быстро производить с ним различные операции, такие как масштабирование, рисование линий и т.д.

Пример:

Пример нахождения ошибки при открытии графического файла.

function LoadPNG ($imgname) {

$im = @imagecreatefrompng ($imgname); /* Attempt to open */

if (!$im) { /* See if it failed */

$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);

/* Output an errmsg */

imagestring ($im, 1, 5, 5, "Error loading $imgname", $tc);

}

return $im;

}

imageCreateFromJpeg

Создание рисунка из файла JPEG.

Синтаксис:

int imageCreateFromJpeg(string filename)

Эта функция загружают изображения из файла в память и возвращают его идентификатор. Как и после вызова imageCreate(), дальнейшая работа с картинкой возможна только через этот идентификатор. При загрузке с диска изображение распаковывается и храниться в память уже в неупакованном формате, для того чтобы можно было максимально быстро производить с ним различные операции, такие как масштабирование, рисование линий и т.д.

imageCreateFromGif

Создание рисунка из файла GIF.

Синтаксис:

int imageCreateFromGif(string filename)

Эта функция загружают изображения из файла в память и возвращают его идентификатор. Как и после вызова imageCreate(), дальнейшая работа с картинкой возможна только через этот идентификатор. При загрузке с диска изображение распаковывается и храниться в память уже в неупакованном формате, для того чтобы можно было максимально быстро производить с ним различные операции, такие как масштабирование, рисование линий и т.д.

Стоит упомянуть, что GD начиная с версии 1.6 не поддерживает формат GIF. В связи с этим данная функция практически не используется.

imagePng

Функция выводит изображение в PNG-формате в любой браузер или в файл.

Синтаксис:

int imagePng(int im [, string filename])

Эта функция сохраняет изображение, заданное своим идентификатором и находящееся в памяти, на диск, или же выводят его в браузер.

Разумеется, вначале изображение должно быть загружено или создано при помощи функции imageCreate(), т.е. мы должны знать его идентификатор im.

Если аргумент filename опущен, то сжатые данные в соответствующем формате выводятся прямо в стандартный выходной поток, т.е. в браузер. Нужный заголовок Content-type при этом не выводится, ввиду чего нужно выводить его вручную при помощи Header().

Фактически, вы должны вызвать одну из трех команд, в зависимости от типа изображения:

Header("Content-type: image/png") для PNG.

Пример:Пример использования функции imagepng():

<?php

$im = imagecreatefrompng ("test.png");

Header("Content-type: image/png")

imagepng ($im);

?>

imageJpeg

Отсылка рисунка JPEG браузеру или сохранение его в файле.

Синтаксис:

int imageJPEG(int im [, string filename [, int quality]])

Эта функция сохраняет изображение, заданное своим идентификатором и находящееся в памяти, на диск, или же выводит его в браузер.