ГРУППА КУРСА
|
Главная >
Учебник PHP >
Создание изображенияPHP позволяет динамически создавать изображения. Конечно, не имеет смысла рисовать на PHP какие-то сложные картинки. Для этого есть графические редакторы. Зато можно рисовать изображения, привязанные к контенту. Прежде всего, графики. Но можно создавать и другие изображения. Функции для создания изображенияФункция imageCreateTrueColor() создаёт новое изображение и возвращает дескриптор для дальнейшей работы с ним. На этом этапе картинка не отображается, она есть только в программе. ImageCreateTrueColor (ширина, высота) При создании изображение представляет собой прямоугольник чёрного цвета.
В примере создано изображение размером 200 на 70 пикселей. Напомню, что в PHP имена функций не чувствительны к регистру символов. И это можно использовать. В отличие от большинства функций PHP, в функциях рисования слова не разделены знаком нижнего подчёркивания. Чтобы визуально отделить слова друг от друга, можно начинать их с большой буквы. Так читать код программы будет гораздо проще. Есть ещё функция imageCreate(). Она работает почти также, но создаёт не полноцветное, а палитровое изображение. В нём используются не все цвета, а только набор доступных цветов. Работать с ним неудобно. Вывод картинкиЧтобы сервер правильно отправлял картинку, в скрипте должен быть заголовок ContentType с указанием MIME-типа контента. Напомню, что во всех примерах этого учебника во 2 строке предполагается установка типа text/html. Но для изображений он другой. В примерах этой главы ContentType будет указан. Для вывода картинки в браузер или в файл используется несколько функций, каждая из которых создаёт изображение своего формата. Например imageJpeg() выводит картинку в формате jpeg. imageJpeg (изображение, файл, качество) Параметры:
изображение - дескриптор изображения файл - путь к файлу. Если NULL или не указан, то изображение выводится в поток. качество - от 0 до 100. Влияет на размер файла. По умолчанию 75 Вот пример скрипта, который создаёт картинку и выводит на экран: PHP код:
Комментарии: 2 - Устанавливаем MIME-тип контента: изображение в формате jpeg 3 - Создаём изображение 4, 5 - Рисуем синий прямоугольник. Изучим это позже 6 - Выводим на экран Функция imagepng() выводит картинку в формате PNG. imagepng (изображение, файл, сжатие, фильтры) Параметры:
изображение - дескриптор изображения файл - путь к файлу сжатие - от 0 до 9. По умолчанию установлено 0 фильтры - указываются с помощью констант, в том числе PNG_NO_FILTER и PNG_ALL_FILTERS Если картинка выводится в поток, то сжатие и фильтры указываются обязательно. Функция imagegif() выводит картинку в формате GIF. imagegif (изображение, файл) Функция imagewbmp() выводит в формате WBMP. imagewbmp (изображение, файл, верхний слой) Параметры:
изображение - дескриптор изображения файл - путь к файлу верхний слой - позволяет указать цвет верхнего слоя. О создании цвета рассказывается в следующей теме Все функции работают по одному принципу: если путь к файлу указан, то картинка сохраняется в файл. А если установлен NULL или не указан, то рисунок выводится в поток. Картинка может занимать много памяти. Для освобождения ресурсов сервера нужно уничтожать изображение после вывода. Это делается с помощью функции imageDestroy().
|