تعلمنا
كيف نقوم ببرمجة موقع بلغة php ورأينا كم هي سهله
وجميله في التعامل, ولكن استخدام لغة php لا يقتصر على
اصدار ملفات phpl او php بل يسمع لك ايضا بإنشاء الصور
بأنواعها سواء كانت متحركه او ثابته. توجد هناك مكتبة
خاصه لعمل هذه الصور وتسمى مكتبة GD والاسم الكامل لها
هو ( GD Library ).
بسم
الله الرحمن الرحيم
متطلبات قبل البدأ :
اهداف
الدرس:
- نبذه عن انواع
الصور
- انشاء الصور
نبذة عن
انواع الصور :
تعلمنا كيف
نقوم ببرمجة موقع بلغة php
ورأينا كم هي سهله وجميله في التعامل, ولكن استخدام
لغة php لا يقتصر على اصدار
ملفات phpl او
php بل يسمع لك ايضا بإنشاء
الصور بأنواعها سواء كانت متحركه او ثابته. توجد هناك
مكتبة خاصه لعمل هذه الصور وتسمى مكتبة
GD والاسم الكامل لها هو (
GD Library ). لهذه المكتبة اصدارات كثيره
وسوف نتكلم عن الاصدار رقم 2.0.28 وهو متوافق مع
الانواع JPEG و
GIF و
PNG. كلها تعمل بنفس الطريقه, هل وصلت الى
مرحلة الحماسه للتعلم , اذن لنبدأ بتعريف هذه الصور
واحده تلو الاخرى.
JPEG :
تنطق هذه العباره
بالطريقه ( جاي-بيق ) وهي اختصار لـ (
Joint Photographic Experts Group
). انا متأ:د انك تعرف هذه النوعيه من الصور
فنستخدمها كثيرا اذا اردنا حفظ الصور وهي مفيده اذا
كانت في الصوره الوان كثيره وتدرجات كثيره. هذه
النوعيه ليست جيده عند استخدام رسوم الخطوط و النصوص و
الاجزاء التي تحتوي على لون جامد واحد. يمكنك معرفة
امور اكثر عن هذه النوعيه عن طريق الموقع الخاص بهم
موقع
JPEG.
PNG :
تنطق هذه العباره
بالطريقه ( بنق ) وهي اختصار لـ (
Portable Network Graphics ) وخصائص هذه
النوعيه متماثله مع النوعية GIF
وهي تعتبر بديلا للنوعيه
GIF. وسبب هذا البديل هو ان
PNG اكثر جوده من النوع GIF.
ويمكنك معرفة معلومات اكثر عن هذا النوع عن طريق
الموقع الخاص بهم
موقع
PNG
GIF :
هذه النوعيه اختصار لـ (
Graphics Interchange Format )
وتستخدم كثيره في مواقع الانترنت لانها خفيفه
وتستطيع عمل الصور المتحركهز تنصح بعض الكتب بإستخدام
النوعيه PNG بدل من هذه
النوعيه لانها اسهل.
انشاء
الصور :
لانشاء
الصور في لغة PHP نتبع 4
خطوات وهي مفيده جدا وتسهل علينا العمل
-
انشاء
الخلفيه المراد العمل عليها
-
رسم
المجسمات او الكتابات على هذه الخلفيه
-
تصدير
هذه الصور او العمل
-
تنظيف
العمل
لنقم بعمل مثال بسيط على
هذه الطريقه لنفهم كيفية العمل

بعد تنفيذ هذا العمل سوف
يكون الناتج هو التالي :

ملاحظه : في حالة عدم ظهور الصوره قم بكتابة الكود
بالشكل التالي,
اضغط هنا
لنقم الان بشرح عملنا
خطوه خطوه
اعداد
الصوره:
اول عمل
قمنا بفعله هو انشاء صوره لنقم بالرسم عليها لنقل انها
كراسة الرسم الخاصه بنا , وهناك طريقتين لعمل هذه
الطريقه الاولى بإستخدام الداله
ImageCreate وهي تأخذ مدخلان العرض والطول
بالترتيب وسوف تقوم بإرجاع الصوره التي قمنا بعملها

الطريقه
الثانيه هي انشاء خلفية العمل من صوره موجوده مسبقا
لدينا بأي نوع كانت بإستخدام الداله
ImageCreateFromPng او
ImageCreateFromJpeg او
ImageCreateFromGif وهي
تأذخ مدخل واحد وهو اسم الصوره التي نريد العمل عليها
( اسم الملف ) والطريقه كالتالي :

رسم
الصوره:
قمنا بعد
ذلك برسم الاشكال التي نريدها على الصوره, وفي الحقيقه
هناك طريقتان لعمل ذلك , اولا يجب ان نقوم بإختيار
الالوان التي نريدها , وكما نعرف انها مكونه من 3
الوان وهي الاحمر والاخضر والازرق , ويمكن استخدام هذه
الالوان عن طريق الداله
ImageColorAllocate وهي تأخذ 4 مدخلات وهي
الصوره , اللون الاحمر واللون الاخضر والازرق وقد
عملنا في مثالنا لونان وهما الابيض والاسود. وهذه
الداله تقوم بإرجاع اللون الذي سنستخدمه لاحقا.

الطريقه
الثانيه هو رسم ما نريد ويكون على اربع نقاط نحتاج
اليها , الصوره , الاحداثيات , اللون , معلومات النص (
اذا كان نص ) , ويمكننا مشاهدة عملنا في مثالنا هنا:

الداله
ImageFIll تقوم بتعبة
الصوره وتأخذ 4 مدخلات وهي الصوره , الاحداث السيني ,
الاحداث الصادي , واللون.
الداله
ImageLine تقوم برسم خط
وتأخذ 6 مدخلات وهي , الصوره , بداية الاحداث السيني ,
بداية الاحداث الصادي , نهاية الاحداث السيني , نهاية
الاحداث الصادي , اللون.
الداله
ImageString تقوم بكتابة نص
على الصوره وتأخذ 6 مدخلات , الصوره , نوع الخط ,
الاحداث السيني , الاحداث الصادي , النص , اللون
** لاحظ
ان ( 0 , 0 ) معناها الركن
العلوي الايسر
اصدار
الصوره:
يمكننا
اصدار الصور بطريقتين , الطريقه الاولى الى المتصفح ,
الطريقه الثانيه حفظها على شكل ملف, وفي مثالنا
استخدمنا الطريقه الاولى وهي تصدير الصوره الى
المتصفح. ويكون العمل على خطوتين , الخطوه الاولى يجب
ان نخبر المتصفح اننا نريد تصدير صور بدلا من مجرد
نصوص او phpL ويمكننا عمل
ذلك عن طريق الداله Header
التي تعملناها سابقا.

في العاده
عندما نقوم بتصدير ملف phpL
او PHP يكون الارسال
تلقائيا بالشكل التالي
Content-type: text/phpl وهو يخبر المتصفح كيف
ان يقوم بترجمة المعلومات. الخطوه الثانيه نقوم بإخراج
الصوره الى المتصفح بإستخدامنا للداله
ImagePng او
ImageJpeg او
ImageGif وقمنا بعمل ذلك في
ملفنا بالطريقه التاليه

في حالة
اردنا ان نقوم بتصدير الصوره الى ملف نقوم بكتابة اسم
الملف كمدخل ثاني الى الداله , ويكون بالطريقه التاليه
:

تنظيف
العمل:
بعد ان
تقوم بطباعة الصوره والانتهاء من العمل يجب ان تقوم
بإرجاع جميع ما استخدمه لانشاء الصوره للخادم وذلك
يكون بتدمير الصوره التي قمت بإنشائها وذلك عن طريق
الداله ImageDestroy وقمنا
بعمل ذلك في مثالنا بالشكل التالي:

هذي هي
مكتبة الصور ( GD ) في لغة
PHP بشكل مبسط جدا , واذا
اردت ان تخوذ بها زياده لكي تحترف التعامل بها يمكنك
مراجعة ملف الاستخدام الخاص بلغة
PHP عن طريق الموقع الخاص بهم,
موقع
PHP