امروزه تصویرها یکی از مهمترین داده هایی هستند که در برنامه های متفاوت به کار گرفته می شوند. سایت ها و برنامه های متفاوتی هستند که برای پردازش تصویر، مانند تغییر اندازه، قرار دادن یک نوشته، چرحش تصویر و دیگر نمونه ها به کار می روند. سایت هایی بسیاری هستند که تصویرها و فایل های ویدیویی را درون خود نگه می دارند (آپلود می کنند).

پی اچ پی، همانند دیگر زبان های برنامه نویسی، باید دارای ویژگی ها . کتابخانه هایی برای کار بر روی تصویرها باشد. کتابخانه درونی GD در پی اچ پی به گونه متن باز درون خود پی اچ پی در دسترس است که می توانیم از آن کارهای گوناگونی را بر روی تصویرها، مانند ایجاد تصویر (Image Creation)، تغییر اندازه تصویر و دیگر نمونه ها را انجام دهیم.

بنابراین تنگنای (محدودیت) پی اچ پی تنها به نمایش خروجی به فرمت اچ تی ام ال نیست، بلکه می توانیم خروجی مان که شامل تصویر همراه با یک متن افزوده شده به آن است را نمایش دهیم. بنابراین با GD می توانیم فرمت های متفاوت تصویر مانند GIF, PNG, JPEG, WBMP و XPM را پدید آوریم. خروجی جریان تصیورها (Image Stream) ها در کنار اینکه می توانند بر روی سیستم فایل نگهداری شوند، همچنین می توانند بر روی خود مرورگر نیز سر راست نمایش داده شوند.

همچنین کتابخانه های Exif و ImageMagic نیز در پی اچ پی هستند که در این نوشته ها آنها را نیز آموزش می دهیم. انگیزه از این نوشته ها آموزش ویژگی های درونی پی اچ پی به ویژه کتابخانه GD است. در کنار اینها، در این نوشته ها دیگر کتابخانه ها، آموزش آپلود کردن تصویر و دیگر آموزش ها مانند پردازش تصویر در لاراول را نیز خواهیم گفت. پیش نیاز دانستن این نوشته، خواندن نوشته های برنامه نویسی پی اچ پی ۷ است.

پیدا کردن وضعیت GD کنونی

کد زیر جدول وضعیت فرمت های قابل پشتیبانی بدست GD در پی اچ پی و وضعیت پشتیبانی از خواندن و نوشتن فایل های با فرمت های گوناگون را نشان می دهد. از پی اچ پی 4.3 کتابخانه GD پیشفرض همراه خود پی اچ پی نصب می شود. در کد و خروجی شکل زیر می خواهیم بدست متد ()gd_info وضعیت کنونی کتابخانه GD را بدانیم. کد زیرا درون یک فایل پی اچ پی نوشته و سپس پس از راه اندازی سرور محلی پی اچ پی، خروجی را در مرورگر بررسی کنید.

کد زیر خروجی تابع ()gd_info را نشان می دهد کهه هر کدام از کلیدهای آرایه برگشتی یکی از ویژگی های درونی کتابخانه GD است. برای نمونه نخستین کلید نسخه کنونی نصب شده به همراه پی اچ پی را نشان می دهد. همچنین می بینید که فایل ها با فرمت های XPM و WebP در این نصب و بر روی ماشین من (مکینتاش) پشتیبانی نمی شوند.

در نوشته های این دوره می خواهیم نخست کتابخانه GD را آموزش دهیم تا کارهای ساده ای را بر روی تصویرها انجام دهیم، سپس نمونه کاردهای دیگری را آموزش می دهیم. همچنین در ادامه تلاش می کنیم پردازش تصویر و یادگیری ماشین را نیز درپی اچ پی آموزش دهیم تا شما بیشتر در پی اچ پی با کار بر روی تصویرها آشنا شوید.