Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ ΠΏΠΎ PHPΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 46

Автор white cat

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ изобраТСния


ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈ установка


Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ рассмотрим идСю создания рисунков сцСнариСм "Π½Π° Π»Π΅Ρ‚Ρƒ". Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ³ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΈ создании сцСнариСв-счСтчиков, Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ², ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΎΠΊ-Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ², Π΄Π° ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ.

Для Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° сущСствуСт ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ GD. Она содСрТит Π² сСбС мноТСство Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ (Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ рисованиС Π»ΠΈΠ½ΠΈΠΉ, растяТСниС/сТатиС изобраТСния, Π·Π°Π»ΠΈΠ²ΠΊΠ° Π΄ΠΎ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹, Π²Ρ‹Π²ΠΎΠ΄ тСкста ΠΈ Ρ‚.Π΄.), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρƒ с Π΄Π°Π½Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° GD Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΏΡ€ΠΈ компиляции ΠΈ установкС PHP. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ хостинг-ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Ρ‹ Π΅Π΅ Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚.

Для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ модуля Π½Π° вашСм локальном дискС Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π² Π‘Π»ΠΎΠΊΠ½ΠΎΡ‚Π΅ Ρ„Π°ΠΉΠ» php.ini ΠΈΠ· ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ Windows (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ C:\Windows)

Π—Π°Ρ‚Π΅ΠΌ:1. НастройтС ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€:extension_dir=C:\Program Files\PHP4\extensions

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ увСдомляСм PHP, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡΠΊΠ°Ρ‚ΡŒ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ C:\Program Files\PHP4\extensions.

2. НайдитС Π·Π°ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ строку ;extension=php_gd.dll

ΠΈ Ρ€Π°Π·ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ Π΅Π΅, Ρ‚.Π΅. ΡƒΠ±Π΅Ρ€ΠΈΡ‚Π΅ ; Π² Π½Π°Ρ‡Π°Π»Π΅.

3. Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ измСнСния Π² Ρ„Π°ΠΉΠ»Π΅ php.ini


imageTypes


ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ графичСских Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ², ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… PHP.

Бинтаксис:

int imageTypes(void)

Ѐункция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π±ΠΈΡ‚ΠΎΠ²ΡƒΡŽ маску графичСских Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ данная вСрсия Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ GD: IMG_GIF | IMG_JPG | IMG_PNG | IMG_WBMP

<?php

if(imageTypes() && IMG_PNG) echo "Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ PNG поддСрТиваСтся";

?>


GetImageSize


ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² рисунка.

Бинтаксис:

array GetImageSize(string filename [,array imageinfo])

Π­Ρ‚Π° функция ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для быстрого опрСдСлСния Π² сцСнарии Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² (Π² пиксСлях) ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° рисунка, имя Ρ„Π°ΠΉΠ»Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ΠΎ Π΅ΠΉ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅. Она Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ список ΠΈΠ· Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… элСмСнтов. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт (с ΠΊΠ»ΡŽΡ‡Π΅ΠΌ 0) Ρ…Ρ€Π°Π½ΠΈΡ‚ ΡˆΠΈΡ€ΠΈΠ½Ρƒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ Π² пиксСлях, Π²Ρ‚ΠΎΡ€ΠΎΠΉ (с ΠΊΠ»ΡŽΡ‡Π΅ΠΌ 1) - Π΅Π³ΠΎ высоту. Π―Ρ‡Π΅ΠΉΠΊΠ° массива с ΠΊΠ»ΡŽΡ‡Π΅ΠΌ 2 опрСдСляСтся Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠΌ изобраТСния: 1, Ссли это GIF, 2 Π² случаС JPG, 3 для PNG ΠΈ 4 - SWF. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ элСмСнт, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ ΠΊΠ»ΡŽΡ‡ 3, Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ послС Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ строку ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ Π²ΠΈΠ΄Π°: height=sx width=sy, Π³Π΄Π΅ sx ΠΈ sy - соотвСтствСнно ΡˆΠΈΡ€ΠΈΠ½Π° ΠΈ высота изобраТСния. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π·Π°Π΄ΡƒΠΌΡ‹Π²Π°Π»ΠΎΡΡŒ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ вставку Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π΅ изобраТСния Π² Ρ‚Π΅Π³ <img>, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ сгСнСрирован сцСнариСм:

<?php

$size_img=GetImageSize("img/image.jpg");

echo "<IMG src='img/image.jpg' $size_img>";

?>

Если ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±Ρ‹Π» ΡƒΠΊΠ°Π·Π°Π½ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ массив imageinfo, Π² Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ„Π°ΠΉΠ»Π΅. Π­Ρ‚ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠ°Ρ€ΠΊΠ΅Ρ€Ρ‹ JPG APP (внСдрСнная информация).Ѐункция iptcparse() позволяСт ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ эти Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΉ Π²ΠΈΠ΄:

<?php

$size_img=GetImageSize("img/image.jpg", &$info_arr);

if(isset($info_Arr["APP13"])) {

$iptc = iptcparse($info_arr["APP13"]);

var_dump($iptc);

};

?>

Данная функция Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ наличия Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ GD.


imageSX


ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡˆΠΈΡ€ΠΈΠ½Ρ‹ рисунка.

Бинтаксис:

int imageSX(int im)

Ѐункция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ изобраТСния, Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ своим ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ im, Π² пиксСлях.


imageSY


ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ высоты рисунка.

Бинтаксис:

int imageSY(int im)

Ѐункция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ изобраТСния, Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ своим ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ im, Π² пиксСлях.


read_exif_data


Π§Ρ‚Π΅Π½ΠΈΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² EXIF ΠΈΠ· Ρ„Π°ΠΉΠ»Π° JPEG.

Бинтаксис:

array read_exif_data(string filename)

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ filename Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ URL.

Ѐункция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ассоциативный массив, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ индСксами ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΈΠΌΠ΅Π½Π° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² EXIF.

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ EXIF ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ хранят ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… ΠΊΠ°ΠΌΠ΅Ρ€ (Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅).

<?php

$exif = read_exif_data("img/file.jpg");

print_r($exif);

?>

Π”Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅:

Array( [FileName] => file.jpg [FileDateTime] => 1064566998 [FileSize] => 31646 [CameraMake] => Eastman Kodak Company [CameraModel] => KODAK DC265 ZOOM DIGITAL CAMERA (V01.00) [DateTime] => 2002:08:31 02:12:45 [Height] => 454 [Width] => 620 [IsColor] => 1 [FlashUsed] => 0 [FocalLength] => 8.0mm [RawFocalLength] => 8 [ExposureTime] => 0.004 s (1/250) [RawExposureTime] => 0.0040000001899898 [ApertureFNumber] => f/ 9.5 [RawApertureFNumber] => 9.5100002288818 [FocusDistance] => 16.66m [RawFocusDistance] => 16.659999847412 [Orientation] => 1 [ExifVersion] => 0200)

Данная функция доступна, Ссли ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° EXIF.

Для этого Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π»ΠΈΠ±ΠΎ ΡΠ½ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ со строки ;extension=php_exif.dll Π² Ρ„Π°ΠΉΠ»Π΅ php.ini (Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ extension=php_exif.dll), Π»ΠΈΠ±ΠΎ ΠΎΡ‚ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ PHP с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ --enable-exif.

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° GD Π½Π΅ трСбуСтся.


imageInterlace


Установка чСрСзстрочности.

Бинтаксис:

int imageInterlace(int im [, int interlace])

Если Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π°Π΄Π°Π½ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ interlace, ΠΈ ΠΎΠ½ Ρ€Π°Π²Π΅Π½ 1, Ρ‚ΠΎ рисунок im отобраТаСтся чСрСзстрочно, Ссли Ρ€Π°Π²Π΅Π½ 0, Ρ‚ΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ.

Ѐункция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ установку чСрСзстрочности.


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(), дальнСйшая Ρ€Π°Π±ΠΎΡ‚Π° с ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΎΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π΅Ρ€Π΅Π· этот ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€. ΠŸΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ с диска ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ распаковываСтся ΠΈ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ ΡƒΠΆΠ΅ Π² Π½Π΅ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅, для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ максимально быстро ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ с Π½ΠΈΠΌ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, рисованиС Π»ΠΈΠ½ΠΈΠΉ ΠΈ Ρ‚.Π΄.