Графика в PHP - Форум Cheat-Master.ru
  • Страница 1 из 1
  • 1
Модератор форума: Sanoxxx, Alowir  
Графика в PHP
yarodi Дата: Понедельник, 18.06.2012, 11:36 | Сообщение # 1
〠_〠
Сообщений: 277
Статус: Offline

Не хочу писать херову тучу слов из которой вы ничего не поймете поэтому буду краток.

Первые шаги

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

Code
<?
Header("Content-Type: image/gif");
$image = ImageCreate(500, 75);
$blue = ImagecolorAllocate($image, 0, 0, 255);
ImageFill($image, 1, 1, $blue);
ImageGIF($image);
ImageDestroy($image);
?>


Сохраните текст в файле с расширением .php и просмотрите его с помощью браузера. Если вы все сделали правильно, то вы увидите то, что показано на рисунке 1.

Рассмотрим код нашего скрипта подробно.

Рассмотрим код нашего скрипта более подробно. В первой строчке скрипт сообщает браузеру информацию о типе передаваемых данных с помощью HTTP-заголовка. В нашем примере используется предопределенный тип «image/gif», который означает, что далее последует изображение в формате GIF. Передавать браузеру соответствующий заголовок необходимо всегда. Для форматов JPEG и PNG первая строчка выглядела иначе:

Code
Header(“Content-Type: image/jpeg”);
Header(“Content-Type: image/png”);


Обратите внимание, что заголовок “Content-Type” передается для каждой страницы только один раз, поэтому PHP-код для генерации изображения необходимо помещать в отдельный файл. Кстати, размещение динамической графики вместе с HTML-кодом возможно только при использовании механизма SSI (Server Side Includes), о чем мы поговорим чуть позже.
Создание графики в PHP состоит из четыре этапов:

создание дескриптора изображения;

регистрация используемых цветов;

рисование с использованием предопределенных функций;

и финальная стадия – создание изображения и передача его браузеру.

В нашем примере первый этап выглядит так:

Code
$image = ImageCreate(500, 75);


Здесь функцияImageCreate() создает дескриптор изображения и присваивается его переменной $image. Функция вызывается с двумя параметрами – высотой и шириной изображения. По умолчанию изображение заливается черным цветом. Следующий этап – цвета:

Code
$blue = ImagecolorAllocate($image, 0, 0, 255);


Все используемые в изображении цвета необходимо регистрировать. Для этого используется функция ImageColorAllocate(); ее параметры – дескриптор изображения и RGB-кодировка цвета. Каждый цвет ставится в соответствие переменной, в дальнейшем эта переменная передается функциям рисования.
Вряд ли стоит перечислять все функции рисования. Скажу лишь, что их немало: вы можете «заливать» изображения цветом, рисовать различные фигуры, делать рисунок прозрачным и т.д. Рассмотрим некоторые из них на практике, а об остальных вы сможете узнать из документации.
В нашем первом примере мы «заливаем» изображение синим цветом с помощью функции

Code
ImageFill:
ImageFill($image, 1, 1, $blue);


Второй и третий параметр – координаты начала заливки. Начало координат располагается в левом верхнем углу изображения. Таким образом, координаты (500, 75) определяют правый нижний угол изображения из первого примера.
Теперь следует передать готовый рисунок браузеру. Это делает функция ImageGIF(), ее единственный параметр – дескриптор изображения. Для форматов JPEG и PNG применяйте функции ImageJPEG() иImagePNG() соответственно. Для освобождения памяти, выделенной под рисунок, в конце скрипта надо вызвать функцию ImageDestroy().
-----------------------------------------------------------------------------------------------------------
Тему буду пополнять


Сообщение отредактировал yarodi - Среда, 04.07.2012, 08:09
sOys Дата: Среда, 20.06.2012, 00:38 | Сообщение # 2
Боец
Сообщений: 86
Статус: Offline
Жду
  • Страница 1 из 1
  • 1
Поиск:
Статистика Форума
Лучшие пользователи
Admin [39113]

GеNius [7210]

[CM]Russel [5557]

kenlo763 [4952]

[CM]AGRESSOR [4639]

Snake_Firm [4452]

Сэс [4416]

Artem_Buero [4223]

[CM]Durman [3204]

[CM]Рафаэль [3080]

iMaddy [2855]

sky_Woker [2854]

getrekt [2745]

Новые пользователи
fennylirst21 [22:04]

shawnfl1 [21:59]

vadekkkk [13:09]

vadekkk [13:06]

rusikzxc [02:42]

concettakc7 [21:51]

Freddie_Torp [16:55]

Drono1 [05:27]

jeriui16 [05:00]

Winke [01:35]

ppppollajb [22:07]

ikuxa1anokhin [19:10]

paulako9 [08:52]