52680.fb2 Справочник по PHP - читать онлайн бесплатно полную версию книги . Страница 135

Справочник по PHP - читать онлайн бесплатно полную версию книги . Страница 135

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

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

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

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

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

Header("Content-type: image/jpeg") для Jpeg

Третий необязательный параметр quality задает качество изображения (от 0 до 100).

<?php

$im=imageCreateFromJPEG("img/file.jpg");

Header("Content-type: image/jpeg");

imageJPEG($im,"",30);

?>

image2WBMP

Вывод изображения в браузер или файл.

Синтаксис:

int image2WBMP( resource image [, string filename [, int threshold]])

Функция выводит изображение, заданное дескриптором image, в браузер, либо в файл, имя которого задано необязательным параметром filename.

Если изображение выводится в браузер, необходимо задать его тип WBMP как image/vnd.wap.wbmp функцией Header():

<?php

$file = "php.png";

$image = imagecreatefrompng($file);

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

image2wbmp($image); // Вывод wbmp-картинки в браузер

?>

Функция image2WBMP() доступна PHP только если версия библиотеки GD 1.8 или ниже.

imageGif

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

Синтаксис:

int imageGIF(int im [, string filename])

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

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

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

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

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

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

imageCopy

Копирование части рисунка.

Синтаксис:

int imageCopy(int dst_im, int src_im, int dst_x, int dst_y, int src_x, int src_y, int src_w, int src_h)

Функция копирует прямоугольную область начиная с позиции (src_x, src_y) шириной src_w и высотой src_h из рисунка src_im в рисунок dst_im, придав копируемой области смещение (dst_x, dst_y).

В следующем примере будет картинка file1.png целиком скопирована в file2.png

<?php

// Создаем первую картинку на основе готового изображения

$im1=imageCreateFromPNG("img/file1.png");

// Определяем ее размеры

$size_x=imageSX($im1);

$size_y=imageSY($im1);

// Создаем вторую пустую картинку

$im2=imageCreate($size_x,$size_y);

// Копируем рисунок целиком из первого изображения во второе