Druzya.org
Возьмемся за руки, Друзья...
 
 
Наши Друзья

Александр Градский
Мемориальный сайт Дольфи. 
				  Светлой памяти детей,
				  погибших  1 июня 2001 года, 
				  а также всем жертвам теракта возле 
				 Тель-Авивского Дельфинариума посвящается...

Библиотека :: Компьютеры и Программирование :: Котеров Д. В. - Самоучитель PHP 4
<<-[Весь Текст]
Страница: из 287
 <<-
 
ет 
практи- 
чески со всеми распространенными форматами изображений, в том числе с GIF, 
JPEG и PNG. 
list GetIimageSize(string $filename [,array& $imageinfo]) 
Эта функция предназначена для быстрого определения в сценарии размеров (в 
пиксе- 
лах) и формата рисунка, имя файла которого передано ей в первом параметре. Она 
возвращает список из четырех элементов. Первый элемент (с ключом 0) хранит ши- 
рину картинки в пикселах, второй (с ключом 1) — его высоту. Ячейка массива с 
клю- 
чом 2 определяется форматом изображения: 0, если это GIF, 1 в случае JPG и 2 
для 
PNG. Следующий элемент, имеющий ключ 3, будет содержать после вызова функции 
строку примерно следующего вида: height=sx width=sy, где sx и sy — соответст- 
венно ширина и высота изображения. Это применение задумывалось для того, чтобы 
облегчить вставку данных о размере изображения в тэг , который может быть 
сгенерирован сценарием. 

Часть IV. Стандартные функции PHP 316 
Работа с изображениями 
и библиотека GD 
Давайте теперь рассмотрим идею создания рисунков сценарием "на лету". Например, 

как мы уже замечали, это очень может пригодиться при создании сценариев- 
счетчиков, графиков, картинок-заголовков да и многого другого. 
Для деятельности такого рода существует специальная библиотека под названием 
GD. Она содержит в себе множество функций (такие как рисование линий, растяже- 
ние/сжатие изображения, заливка до границы, вывод текста и т. д.), которые 
могут 
использовать программы, поддерживающие работу с данной библиотекой. PHP (со 
включенной поддержкой GD) как раз и является такой программой. 
Поддержка GD включается при компиляции и установке PHP. Возможно, неко- 
торые хостинг-провайдеры ее не имеют. Выясните, работает ли PHP вашего 
хостера с библиотекой GD. 
Пример 
Начнем сразу с примера сценария, который представляет собой не HTML-страницу в 
обычном смысле, а рисунок PNG. То есть URL этого сценария можно поместить в 
тэг: 
 
Как только будет загружена страница, содержащая указанный тэг, сценарий запус- 
тится и отобразит надпись Hello world! на фоне рисунка, лежащего в 
images/button.png. Полученная картинка нигде не будет храниться — она созда- 
ется "на лету". 
Рис. 23.1. Демонстрация 
возможностей вывода 
TrueType-шрифтов на PHP 

Глава 23. Работа с изображениями 317 
Листинг 23.1. Создание картинки "на лету" 
 
Итак, мы получили возможность "на лету" создавать стандартные кнопки с разными 
надписями, имея только "шаблон" кнопки. 
Создание изображения 
Давайте теперь разбираться, как работать с картинками в GD. Для начала нужно 
кар- 
тинку создать — пустую (при помощи imageCreate()) или же загруженную с диска 
(imageCreateFromPng(), imageCreateFromJpeg() или 
imageCreateFromGif(), в зависимости от того, какие форматы поддерживаются 
PHP и GD). 
int imageCreate(int $x, int $y) 
Создает пустую картинку размером $x на $y точек и возвращает ее идентификатор. 
После того, как картинка создана, вся работа с ней осуществляется именно через 
этот 
идентификатор, по аналогии с тем, как мы работаем с файлом через его дескриптор.
 
int imageCreateGromPng(string $filename) или 
int image
 
<<-[Весь Текст]
Страница: из 287
 <<-