T&R splet blog o spletnih storitvah. Razgaljamo tehnologijo!

reference spletnih strani
12th August

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:

PHP:
  1. // naredimo resize in nato spremenjeno sliko shranimo
  2. $image = wiImage::load('/path/to/an/image.png');
  3. $resized = $image->resize(400, 300);
  4. $resized->saveToFile('/path/to/resized.png');
  5.  
  6. // naredimo resize, crop, nato obdelamo v grayscale in sliko shranimo
  7. $img = wiImage::load('image.png');
  8. $img->resize(200, 500)->crop(10, 10, 80, 80)->asGrayscale()->saveToFile('new.png');

Thumbnail primeri:

PHP:
  1. // naredimo resize in nato spremenjeno sliko shranimo
  2. include_once('thumbnail.inc.php');
  3. $thumb = new Thumbnail($_GET['filename']);
  4. $thumb->resize($_GET['width'],$_GET['height']);
  5. $thumb->show();
  6.  
  7. // naredimo resize, crop in nato spremenjeno sliko shranimo
  8. include_once('thumbnail.inc.php');
  9. $thumb = new Thumbnail('sample.jpg');
  10. $thumb->resize(250,250);
  11. $thumb->cropFromCenter(100);
  12. $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:

Katero php image knjižnico pa vi uporabljate? Ste napisali svojo? Delite z nami v komentarjih.

Deli s skupnostjo:

  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks

Podobni članki:

  1. Manipulacija slik s PHP-jem – cache slik – 304 Not Modified
  2. Dinamično kreiranje / Upravljanje slik
  3. PHP – delo z UTF-8 stringi oz. podatki – težave s šumniki (č,š,ž)
  4. Predogled PDF-ja – pretvorba PDF v jpeg s pomočjo PHP-ja
  5. PHP – izdelava galerije – preprosta skripta za prikazovanje slik
  6. PHP – pretvorba Excel datoteke v .txt datoteko – Excel to txt converter
  7. PHP – ZenCart – utf8 – slovenski jezik – slovenski prevod – pretvorba jezikov
  8. PHP – dinamično generiranje tekst slike – font image generator
  9. PHP POST Request – brez uporabe cURL knjižnice
  10. PHP – kako ugotoviti tip datoteke (get file extension type)

4x komentirano na “PHP knjižice za delo s slikami – WideImage | Thumbnailer”

  1. gasper_k je napisal:

    Razvojna verzija (trunk) WideImage ima eksperimentalno podporo za bmp. Je pa res, da prinese tudi precej drugih sprememb in da zlomi backwards compatibility. :)

    lp

  2. gasper_k je napisal:

    aja, pa prevod library = knjižnica. :)

  3. Roky je napisal:

    Kakšen predlog:)?

  4. Manipulacija slik s PHP-jem – cache slik – 304 Not Modified | T&R splet - internetne storitve je napisal:

    [...] Za delo s sliko smo uporabili meni zelo všečno wideImage knjižnico o kateri smo na T&R splet že pisali. [...]

Dodaj komentar