ПредишенСледващото

Всичко в нашия уебсайт - да украсяват собствените си страници. Сега ние се опитваме да събере интересни и полезни материали за проектиране и okolodizaynerskie теми за програмиране, хостинг и популяризиране на сайта.

Web-дизайн - въпроси, пряко свързани със създаването на уеб сайтове

Графика - равен, kollazhiruem, анимиране

Хостинг - Въпроси, които пускат вашите сайтове в мрежата

Животът в мрежата

Промоция, промоция, оптимизация

програмиране

За създаването и манипулирането на различни графични формати JPEG, PNG, TIFF, GIF, ще трябва gd_library библиотека. Започвайки от версия 4.3 PHP тази библиотека е изградена. Трябва да инсталирате или компилирате PHP с посочване --with-GD. За потребителите на Windows, трябва да посочите във вашия файл php.ini разширение разширение = php_gd2.dll.

Когато се работи с изображения на предприемача може да се нуждаят от подкрепа за допълнителни шрифтове и размери - има специален разширения GD библиотека, за да работи с формати GIF, XPM, както и други хора, както и за инсталирането на допълнителни шрифтове.

Помислете за основните функции, които ви позволяват да създавате, променяте и показва изображения в браузъра.

Функции за създаване на изображения от вече съществуващите:

Imagecreatefromgif (), imagecreatefrompng (), imagecreatefromjpeg () и други подобни, като като аргументи URL или пътя на файла с изображение се връща идентификатор, представляващ даден образ.

Например: $ образ = imagecreatefromgif ( "път / до / си / image.gif") връща идентификатора на image.gif на изображението, чрез които впоследствие могат да бъдат modiftsirovat изображение показва на неговия текст, да го комбинирате с други изображения. В случай на провал на изпълнението на този вид функция връща фалшиво, това е, проверка и процеса се провали може да бъде лесно, като тип на тест:

ако (! $ образ = @imagecreatefromgif ( "път / до / си / image.gif"))
// код, за да бъде изпълнена, ако изображението не е било
>

Функция, за да се създаде нов имидж:

Imagecreatetruecolor (), imagecreate () Създава празен изображение, като като параметър ширината и височината на образуваните изображението в пиксели. Така, ако в предишния пример, ние не може да създаде идентификацията на съществуващо изображение, ние можем да се създаде нов имидж.

ако (! $ образ = @imagecreatefromgif ( "път / до / си / image.gif"))
$ Изображение = imagecreatetruecolor (88, 31); // ако не образът е създаден въз основа на image.gif, ние създаваме нова размер на изображението от 88 до 31 пиксела
>

Възможности за цветята:

Imagecolorallocate () - приема като аргументи идентификатор на изображението и на трите компонента на желания цвят (RGB: червено, зелено и синьо компонент), определя точния цвят за изображението.

В нашия пример, ние определяме цвета на фона и шрифта за текста изход:

$ FONTCOLOR = imagecolorallocate ($ изображение, 0, 0, 0);
$ Backgroundcolor = imagecolorallocate ($ изображение, 255, 255, 255);

Изображение функция цвят на запълване:

Imagefill (), imagefilledrectangle (), imagefilledarch (), imagefilledellipse () и други imagefill ... функция приема като аргументи на координатите на геометрични фигури в картинката, да се представи за запълване на тези части на снимката определен цвят. Например, ние ще изпълним цвят pryamougolnik фон:

imagefill ($ образ, 0, 0, $ backgroundcolor); // тук 0 0 - координатите на горния ляв ъгъл на запълнени области.

Функции за рисуване текст:

Imagestring (), imagettftext (), imagestringup () изход на снимката в текста по различни начини, като се използват различни шрифтове.

Например,
imagestring ($ образ, 5, 0, 0, "текст", $ FONTCOLOR); // покаже текста дума на нашия имидж $ изображение вградени шрифтове, за да координатите (горния ляв точка) 0, 0.

В допълнение към вградените шрифтове може да се използва с препоръчано imageloadfont функция () шрифтове. imagettftext () функция ви позволява да използвате тип шрифтове вярно тип.

На този етап, може да имате проблем с оттеглянето на текста в руски - вградени шрифтове (за imagestring функция () 1-5 в зависимост от размера) не поддържат кирилица, и дори когато сте задали функцията си imagettftext шрифт (кирилица) може да бъде показана в неправилна кодиране.

Има няколко начина за решаване на този проблем. Най-лесно - да конвертирате низ с кирилица в UTF-8 кодиране:
$ Текст = изброяване ( "прозорци-1251", "UTF-8", "нашия текст");

Добавете специални ефекти:

Gd_library набор от функции ви позволяват да добавяте специални ефекти към текущото изображение да привлече нови обекти подчертават определени области, и така нататък това. Това са само няколко примера:

  • imagedashedline () функция - насочва пунктирана линия;
  • imageellipse () функция - обръща елипса;
  • imagesetbrush () функция - създава четка;
  • imagefilter () функция - приложили образа конкретен филтър, например, обръща цветовете в изображение, превръща изображението в черно-бял режим, промяна на яркостта, контрастно съотношение, добавете фаска и др.

Издаване на получения образ на потребителя:

Функции на изхода на формуляра imagegif (), imagepng (), imagejpeg () резултата в браузъра или файл. Не забравяйте, че Content-Type хедъра за тези скриптове трябва да бъдат предефинирани:

глава ( "Съдържание тип: изображение / GIF");
imagegif ($ изображение);

Ние трябва да завършим нашия пример за логичен извод. Да предположим, че нашата цел е да се създаде така наречената CAPTCHA (капитан), тоест, изображения, в които всеки път, когато страницата ще бъдат показани на нова поредица от знаци - например, chetyrhznachnoe номер.


// се опита да създаде изображение на CAPTCHA с някои "шумен" фон:
ако (! $ образ = @imagecreatefromgif ( "път / до / си / image.gif"))
// ако не образът е създаден въз основа на image.gif, ние създаваме нова размер на изображението от 88 до 31 пиксела
$ Изображение = imagecreatetruecolor (88, 31);
// определят цвета на фона:
$ Backgroundcolor = imagecolorallocate ($ изображение, 255, 255, 255);
// запълване на полученото изображение с избрания цвят:
imagefill ($ образ, 0, 0, $ backgroundcolor);
>
// определят цвета на шрифта:
$ FONTCOLOR = imagecolorallocate ($ изображение, 0, 0, 0);
// създаване на случайно четирицифрен номер:
$ Текст = mt_rand (1000-9999);
// покаже броя на картината:
imagestring ($ образ, 5, 0, 0, "текст", $ FONTCOLOR);
// и издаване доведе до потребителя:
глава ( "Съдържание тип: изображение / GIF");
imagegif ($ изображение);

Този скрипт може винаги да се усложни, например, добавяйки, ъгъл на наклона на етикета, сянка от номерата, чрез прилагане на филтри за полученото изображение.

Работа със снимки:

Разширяване Exif. Тя ви позволява да се работи с информацията, съхранявана в заглавията на цифрови снимки. За да работите с това разширение не е необходимо всички допълнителни библиотеки, PHP просто трябва да се инсталира с подкрепата --enable-Exif. За потребителите на Windows, във файла php.ini трябва да бъдат посочени разширение разширение = php_mbstring.dll и разширение = php_exif.dll, първо трябва да се посочи кога, че mbstring.

функция exif_imagetype () приема като аргумент пътя до файла ви позволява да определите формата на картината. Това е необходимо, за да не се използват и останалите функции Exif до изображения в неподдържани формати. Формат на снимката за по-нататъшна работа с тези функции трябва да е във формат GIF, JPEG, PNG, SWF, PSD, BMP, tiff_II, tiff_MM, JPC, JP2, jpx, jb2, SWC, тогава и само тогава, WBMP, XBM.

exif_read_data () функция чете Exif заглавията от JPEG и TIFF файлове.

Например:

Life линии графични в PHP (как да се направи котировки показатели)

// проверяваме дали това наистина JPEG формат на изображението
ако (exif_imagetype ( "image.jpeg") == IMAGETYPE_JPEG)
// чете заглавията
$ Imagedata = exif_read_data ( "image.jpeg", 0, вярно);
ако ($ imagedata === невярно)
ехо "Не" заглавки; // Ако не заглавията
още
// показва множество заглавия в раздели
foreach ($ imagedata като $ ключов раздел => $)
foreach ($ раздел като $ име => $ стойност)
ехо "$ ключова стойност име $ $ ..";
>
>
>
още
ехо "Non поддържан формат";

Тази статия описва възможността за използване на само някои от функциите, като gd_library и Exif-разширение. За повече информация за всички налични функции работят с изображения в PHP може да се намери на официалния сайт, работещи в областта на изображението секция и Exif функции.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!