افتح المصدر PHP API لمعالجة الصور
مكتبة PHP التي تمكن مبرمجي البرامج من تحميل صور GIF و PNG و JPEG وتغيير حجمها وتحويلها بسهولة.
تعد WideImage مكتبة مفتوحة المصدر موجهة للكائنات تمنح مطوري البرامج القدرة على معالجة الصور داخل تطبيقات PHP الخاصة بهم. توفر المكتبة طريقة بسيطة لتحميل الصور ومعالجتها وحفظها بتنسيقات الصور الأكثر شيوعًا. تدعم المكتبة ميزات مثل تغيير حجم الصور ، والقص ، والدمج ، وكتابة نص بظل ، والتحويل إلى تنسيقات أخرى ، واستنساخ الصور ، وتطبيق علامة مائية على الصورة ، وغير ذلك الكثير.
تتضمن المكتبة حاليًا دعمًا لبعض تنسيقات ملفات الصور الأكثر شيوعًا والتي يتم دعمها أصلاً بواسطة امتداد GD على الخادم مثل GIF و PNG و JPG و GD و GD2 و WBMP و XBM و XPM. كما أنه يدعم BMP (قراءة / كتابة) و TGA (للقراءة فقط). تضمنت المكتبة دعمًا للتحويل عبر التنسيق. يمكن للمطورين بسهولة تحميل صورة بالتنسيق الذي يختارونه ثم يمكنهم حفظها في أي تنسيق ملف صورة آخر مدعوم.
تستخدم المكتبة امتداد GD لتنفيذ معظم العمليات المدعومة على الصور. لا يدعم امتداد GD بعض الوظائف ويعمل القليل منها ببطء حيث يتم ترميزها بلغة PHP نقية. عمل فريق WideImage بجد لتحسين كود المكتبة وقام بتحديث وظائف GD لتحسين الأداء.
الشروع في العمل مع WideImage
يتطلب PHP 5.2+ بامتداد GD2. يمكنك بسهولة تثبيت مكتبة WideImage عبر PEAR. الرجاء استخدام الأمر التالي.
قم بتثبيت WideImage عبر PEAR
pear channel-discover pear.kozak.si
pear install kozak.si/WideImage
حفظ الصور في تنسيقات أخرى عبر PHP
توفر مكتبة WideImage مفتوحة المصدر دعمًا لحفظ الصور في ملف ، مباشرة إلى المستعرض ، أو يمكنها استرداد بيانات الصورة كسلسلة داخل تطبيقاتك الخاصة. للحفظ في ملف ، تحتاج إلى تمرير اسم الملف ومساره كمعامل. أثناء الحفظ إلى JPEG أو PNG ، يمكنك تعيين جودة الصورة لـ JPEG ومستوى الضغط لـ PNG. أثناء الاسترداد كسلسلة ، يمكنك التقاط بيانات الصورة بسهولة وحفظها في قاعدة بيانات أو ملف. يمكنك أيضًا حفظ الصورة مباشرة في المتصفح. تحتاج إلى تمرير معلمة نوع الصورة وسيتم حفظها بالتنسيق المقترح.
حفظ الصورة في ملف عبر PHP API
include "path-to/WideImage.php";
//load Image
$image = WideImage::load("path-to/image.jpg");
// save to jpeg, quality=40
$img->saveToFile('image.jpg', 40);
// save to png, compression level = 6
$img->saveToFile('image.png', 6);
تحميل الصور عبر PHP API
تسمح واجهة برمجة تطبيقات WideImage لمبرمجي البرامج بتحميل صورة من اختيارهم بسهولة داخل تطبيق PHP الخاص بهم. قدمت المكتبة عدة خيارات لتحميل الصور ، مثل تحميل صورة من ملف ، من خلال توفير عنوان URL ، أو من سلسلة ثنائية ، أو من مورد صورة GD صالح. تحتاج إلى توفير مسار ملف كامل واسم الصورة. يعتبر خيار السلسلة الثنائية مفيدًا جدًا عند الحاجة إلى تحميل الصور من قاعدة بيانات.
تحميل وتحرير الصورة عبر PHP
$font = '/resources/assets/NOVABOLD.otf';
$image = WideImage::load('name');
$canvas = $image->getCanvas();
$canvas->useFont($font, 20, $image->allocateColor(255, 255, 255));
$canvas->writeText('center', 'top', 'I am ');
تغيير حجم الصورة والاقتصاص
توفر مكتبة WideImage المجانية وظائف لتغيير حجم الصور أو اقتصاصها باستخدام أوامر PHP. تحتاج إلى توفير الأبعاد الجديدة للصورة. إذا تم توفير أحد الأبعاد ولم يتم تحديد الآخر (أو تم إعطاء قيمة خالية) ، فإن المكتبة تحسبه بذكاء من نسبة البُعد الآخر. بالنسبة لعمليات مثل تغيير الحجم والقص حيث يتم تمرير الإحداثيات كمعلمات ، يكون خيار الإحداثيات الذكية مفيدًا جدًا.
تحميل وتحرير الصورة عبر PHP
include "path-to/WideImage.php";
//load Image
$image = WideImage::load("path-to/image.jpg");
//Resize Image
$resized = $image->resize(400, 300);
//Save Image
$resized->saveToFile("small.jpg");