Görüntüleri Yönetmek için Açık Kaynak PHP API'si
Yazılım programcılarının GIF, PNG, JPEG görüntülerini kolaylıkla Yüklemesini, Yeniden Boyutlandırmasını ve Dönüştürmesini sağlayan PHP Kitaplığı.
WideImage, yazılım geliştiricilere kendi PHP uygulamaları içindeki görüntüleri değiştirme yeteneği veren açık kaynaklı, nesne yönelimli bir kitaplıktır. Kitaplık, görüntüleri en yaygın görüntü biçimlerinde yüklemek, değiştirmek ve kaydetmek için basit bir yol sağlar. Kitaplık, görüntüleri yeniden boyutlandırma, kırpma, birleştirme, gölgeli bir metin yazma, diğer biçimlere dönüştürme, görüntü klonlama, görüntüye filigran uygulama ve daha pek çok özelliği destekler.
Kitaplık şu anda GIF, PNG, JPG, GD, GD2, WBMP, XBM ve XPM gibi sunucudaki GD uzantısı tarafından yerel olarak desteklenen en yaygın görüntü dosyası biçimlerinden bazıları için destek içermektedir. Ayrıca BMP (okuma/yazma) ve TGA'yı (salt okunur) destekler. Kütüphane, formatlar arası dönüştürme desteği içeriyor. Geliştiriciler, bir görüntüyü istedikleri biçimde kolayca yükleyebilir ve ardından, desteklenen herhangi bir başka görüntü dosyası biçiminde kaydedebilir.
Kitaplık, görüntüler üzerinde desteklenen işlemlerin çoğunu gerçekleştirmek için GD uzantısını kullanır. GD uzantısı bazı işlevleri desteklemiyor ve çok azı saf PHP ile kodlandığından yavaş çalışıyor. WideImage ekibi, kitaplık kodunu optimize etmek için çok çalıştı ve performansı artırmak için GD işlevlerini güncelledi.
WideImage'a Başlarken
GD2 uzantılı PHP 5.2+ gerektirir. WideImage kitaplığını PEAR aracılığıyla kolayca kurabilirsiniz. Lütfen aşağıdaki komutu kullanın.
WideImage'ı PEAR aracılığıyla kurun
pear channel-discover pear.kozak.si
pear install kozak.si/WideImage
PHP ile Görüntüleri Diğer Biçimlere Kaydetme
Açık kaynaklı WideImage kitaplığı, görüntüleri bir dosyaya, doğrudan bir tarayıcıya kaydetme desteği sağlar veya bir görüntü verisini kendi uygulamalarınızın içinde bir dize olarak alabilir. Bir dosyaya kaydetmek için dosya adını ve yolunu parametre olarak iletmeniz gerekir. JPEG veya PNG'ye kaydederken, görüntünün kalitesini JPEG için ve sıkıştırma seviyesini PNG için ayarlayabilirsiniz. Bir dizi olarak alınırken, görüntü verilerini zahmetsizce yakalayabilir ve bir veritabanına veya dosyaya kaydedebilirsiniz. Görüntüyü doğrudan tarayıcıya da kaydedebilirsiniz. Görüntü tipi parametresini geçmeniz gerekir ve önerilen biçimde kaydedilecektir.
Resimyi PHP API aracılığıyla bir Dosyaya Kurtarın
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 ile Görüntüleri Yükleme
WideImage API, yazılım programcılarının seçtikleri bir görüntüyü kendi PHP uygulamalarına kolaylıkla yüklemelerine olanak tanır. Kitaplık, bir dosyadan, bir URL sağlayarak, ikili bir dizeden veya geçerli bir GD resim kaynağından resim yüklemek gibi resimleri yüklemek için çeşitli seçenekler sağladı. Tam bir dosya yolu ve görüntü adı sağlamanız gerekir. İkili dize seçeneği, bir veritabanından görüntüleri yüklemek için gerektiğinde çok kullanışlıdır.
Load & Edit Image through 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 ');
Görüntü Yeniden Boyutlandırma ve Kırpma
Ücretsiz WideImage kütüphanesi, PHP komutlarını kullanarak görüntüleri yeniden boyutlandırmak veya kırpmak için işlevsellik sağlamıştır. Resmin yeni boyutlarını sağlamanız gerekir. Bir boyut sağlanır ve diğeri belirtilmezse (veya null verilirse), kitaplık bunu diğer boyutun oranından akıllıca hesaplar. Koordinatların parametre olarak iletildiği yeniden boyutlandırma ve kırpma gibi işlemler için akıllı koordinatlar seçeneği çok kullanışlıdır.
Load & Edit Image through 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");