Open Source PHP API pro manipulaci s obrázky
Knihovna PHP, která softwarovým programátorům umožňuje snadno načítat, měnit velikost a převádět obrázky GIF, PNG, JPEG.
WideImage je objektově orientovaná knihovna s otevřeným zdrojovým kódem, která dává vývojářům softwaru možnost manipulovat s obrázky v rámci jejich vlastních aplikací PHP. Knihovna poskytuje jednoduchý způsob načítání, manipulace a ukládání obrázků v nejběžnějších formátech obrázků. Knihovna podporuje funkce jako změna velikosti obrázků, oříznutí, sloučení, psaní textu se stínem, převod do jiných formátů, klonování obrázků, použití vodoznaku na obrázek a mnoho dalších.
Knihovna v současné době obsahuje podporu pro některé z nejběžnějších formátů souborů obrázků, které jsou nativně podporovány příponou GD na serveru, jako jsou GIF, PNG, JPG, GD, GD2, WBMP, XBM a XPM. Podporuje také BMP (čtení/zápis) a TGA (pouze pro čtení). Knihovna obsahuje podporu pro převod mezi formáty. Vývojáři mohou snadno načíst obrázek ve formátu podle svého výběru a poté jej uložit v jakémkoli jiném podporovaném formátu souboru obrázku.
Knihovna používá rozšíření GD k provádění většiny podporovaných operací s obrázky. Rozšíření GD nepodporuje některé funkce a jen málo z nich pracuje pomalu, protože jsou kódovány v čistém PHP. Tým WideImage tvrdě pracoval na optimalizaci kódu knihovny a aktualizoval funkce GD, aby zlepšil výkon.
Začínáme s WideImage
Vyžaduje PHP 5.2+ s rozšířením GD2. Knihovnu WideImage snadno nainstalujete přes PEAR. Použijte prosím následující příkaz.
Nainstalujte WideImage přes PEAR
pear channel-discover pear.kozak.si
pear install kozak.si/WideImage
Ukládání obrázků do jiných formátů přes PHP
Knihovna WideImage s otevřeným zdrojovým kódem poskytuje podporu pro ukládání obrázků do souboru, přímo do prohlížeče nebo může načíst obrazová data jako řetězec ve vašich vlastních aplikacích. Chcete-li uložit do souboru, musíte jako parametr předat název souboru a jeho cestu. Při ukládání do JPEG nebo PNG můžete nastavit kvalitu obrázku pro JPEG a úroveň komprese pro PNG. Při načítání jako řetězec můžete bez námahy zachytit obrazová data a uložit je do databáze nebo souboru. Obrázek můžete také uložit přímo do prohlížeče. Musíte předat parametr typu obrázku a ten se uloží v navrhovaném formátu.
Uložit obrázek do souboru přes 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);
Načítání obrázků přes PHP API
WideImage API umožňuje softwarovým programátorům snadno načíst obrázek dle vlastního výběru do jejich vlastní PHP aplikace. Knihovna poskytovala několik možností pro načítání obrázků, jako je načítání obrázku ze souboru, poskytnutím adresy URL, z binárního řetězce nebo z platného zdroje obrázku GD. Musíte zadat úplnou cestu k souboru a název obrázku. Možnost binárního řetězce je velmi užitečná, když je potřeba načíst obrázky z databáze.
Načíst a upravit obrázek přes 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 ');
Změna velikosti a oříznutí obrázku
Bezplatná knihovna WideImage poskytuje funkce pro změnu velikosti nebo oříznutí obrázků pomocí příkazů PHP. Musíte zadat nové rozměry obrázku. Pokud je zadána jedna dimenze a druhá není specifikována (nebo je zadána hodnota null), knihovna ji chytře vypočítala z poměru druhé dimenze. Pro operace, jako je změna velikosti a oříznutí, kde jsou souřadnice předávány jako parametry, je možnost inteligentních souřadnic velmi užitečná.
Načíst a upravit obrázek přes 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");