PHP knjižice za delo s slikami – WideImage | Thumbnailer
Na forumih je še vedno opaziti precej vprašanj glede manipulacije / kreiranje slik s pomočjo PHP-ja in GD knjižnice. Sama GD knjižnica je sama po sebi zelo močna knjižnica s katero je moč ustvariti marsikaj, vendar se za enostavno manipulacijo oz. standardne operacije ne izplača truditi z lastno kodo ter paziti pri varnosti, pregledovanjem tipa datotek, kreiranje resourcov iz slike (ImageJPEG, ImageGIF, itd). Pisanje celotne kode za operacije nad slikami priporočam le v primeru, kjer je hitrost zelo pomemben faktor ali pa potrebujete res speficično stvar, ki jo (zaenkrat) ni moč najti v obstoječih knjižnicah za obdelavo slik.
O osnovnih operacijah s pomočjo GD knjižnice nad slikami smo na T&R Splet blogu že opisali. Sedaj si poglejmo nekaj primerov operacij s knjižnico WideImage ter Thumbnail. WideImage knjižnica je slovenskega porekla (Fatg), Thumbnailer pa gostuje Ian Selby. Ob brskanju informacij o avtorju te skripte sem opazil, da je na voljo nova izboljšana verzija Thumbnailer-ja, ki se sedaj imenuje PHP Thumb.
Wideimage primeri:
-
// naredimo resize in nato spremenjeno sliko shranimo
-
$image = wiImage::load('/path/to/an/image.png');
-
$resized = $image->resize(400, 300);
-
$resized->saveToFile('/path/to/resized.png');
-
-
// naredimo resize, crop, nato obdelamo v grayscale in sliko shranimo
-
$img = wiImage::load('image.png');
-
$img->resize(200, 500)->crop(10, 10, 80, 80)->asGrayscale()->saveToFile('new.png');
Thumbnail primeri:
-
// naredimo resize in nato spremenjeno sliko shranimo
-
include_once('thumbnail.inc.php');
-
$thumb = new Thumbnail($_GET['filename']);
-
$thumb->resize($_GET['width'],$_GET['height']);
-
$thumb->show();
-
-
// naredimo resize, crop in nato spremenjeno sliko shranimo
-
include_once('thumbnail.inc.php');
-
$thumb = new Thumbnail('sample.jpg');
-
$thumb->resize(250,250);
-
$thumb->cropFromCenter(100);
-
$thumb->save('path/to/file.jpg',100);
Primerjava - mnenje:
Pri različnih projektih sem uporabil enkrat WideImage drugič Thumbnailer knjižnico.
Pri Thumbnailer-ju cenim majhnost (ena datoteka) ter zmožnost prikaza datoteke preko "show" methode, ki sama vstavi potreben header parameter. Zaradi majhnosti same knjižnice je manjše spremembe moč hitro dodati sami knjižnici.
WideImage pa cenim zaradi odziva avtorja v primeru hrošča/dodatne funkcionalnosti, možnosti chain klica funkcij, pester izbor operacij, boljše dokumentacije, boljše podpore pri lovljenju napak. Pri obeh pa pogrešam BMP podporo za katero sem že pisal Fatg-ju, upam, da bo kmalu vdelana, kar je obljubljal že v komentarjih na T&R Splet blogu.
Katero izbrati?
Moje mnenje je, da uporabite WideImage.
Dodatne informacije:
- Image manipulant objekt na pehape.si by Arjan Topolovec
- php-image knjižnica s podporo efektom ter fontom
- Seznam php image objektov na googlu
Katero php image knjižnico pa vi uporabljate? Ste napisali svojo? Delite z nami v komentarjih.
Podobni članki:
- Manipulacija slik s PHP-jem – cache slik – 304 Not Modified
- Dinamično kreiranje / Upravljanje slik
- PHP – delo z UTF-8 stringi oz. podatki – težave s šumniki (č,š,ž)
- Predogled PDF-ja – pretvorba PDF v jpeg s pomočjo PHP-ja
- PHP – izdelava galerije – preprosta skripta za prikazovanje slik
- PHP – pretvorba Excel datoteke v .txt datoteko – Excel to txt converter
- PHP – ZenCart – utf8 – slovenski jezik – slovenski prevod – pretvorba jezikov
- PHP – dinamično generiranje tekst slike – font image generator
- PHP POST Request – brez uporabe cURL knjižnice
- PHP – kako ugotoviti tip datoteke (get file extension type)



August 21st, 2009 ob 4:34 pm
Razvojna verzija (trunk) WideImage ima eksperimentalno podporo za bmp. Je pa res, da prinese tudi precej drugih sprememb in da zlomi backwards compatibility.
lp
August 27th, 2009 ob 1:40 pm
aja, pa prevod library = knjižnica.
August 27th, 2009 ob 2:04 pm
Kakšen predlog:)?
October 16th, 2009 ob 6:08 pm
[...] Za delo s sliko smo uporabili meni zelo všečno wideImage knjižnico o kateri smo na T&R splet že pisali. [...]