ImageWorkshop: operaţii pe imagini via PHP


Vă amintiţi articolul PHP şi lucrul pe imagini de acum patru ani? Cei mai mulţi sunt sigur că nu. Ei bine, dacă acolo am văzut folosirea bibliotecii GD (trebuie verificat dacă e activă pe serverul unde rulaţi PHP… şanse mari să fie), acum vom folosi o clasă PHP ce uşurează mult lucrul (se bazează de asemenea pe GD). Se numeşte ImageWorkshop şi documentaţia o găsiţi aici. Aşa după cum se subliniază şi în subtitlul vizibil în captura de mai jos, ImageWorkshop ne permite să lucrăm pe straturi: avem imaginea iniţială şi ei îi putem adăuga straturi după nevoi.

imagine

Poate vă întrebaţi cui îi poate folosi aşa ceva? Aplicaţii sunt multe. Să zicem un sit ce e u portofoliu de fotografii: cu ImageWorkshop se poate aplica uşor un watermark – imaginile originale rămân undeva la secret, iar online se văd imaginile, poate mai mici, cu watermark. Sau poate vorbim de un sit pentru creat felicitări: omul încarcă imaginea sa, iar webaplicaţia îi permite să aplice diverse elemente peste (să zicem PNG-uri cu transparenţă). Vă recomand să vedeţi exemplele oferite. Unul îl pun mai jos, cu comentarii în română, pentru a sublinia cât de simplu este de folosit.

// imaginea initiala
$imaginea = new ImageWorkshop(array(
    "imageFromPath" => "/calea/spre/imagine.jpg",
));

// layerul cu text
$layerText = new ImageWorkshop(array(
    "text" => "Copyright 2012 VuVuVu.vu",
    "fontPath" => "/calea/spre/fonturi/arial.ttf",
    "fontSize" => 11,
    "fontColor" => "ffffff",
    "textRotation" => 0,
));

// adaugam layerul cu text peste imagine
// LB inseamna Left Bottom (stanga-jos)
// deci la 12px de la stanga si 12px de jos
$imaginea->addLayer(1, $layerText, 12, 12, "LB");

$imagineafinala = $imaginea->getResult();

header('Content-type: image/jpeg');

//se afiseaza un JPG cu calitate 95%
imagejpeg($imagineafinala, null, 95);


Apreciază articolul:

1 stea2 stea3 stea4 stea5 stea (1 evaluări, media: 5,00 din 5)
Loading...Loading...

0 comentarii


Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile necesare sunt marcate *