PHP-könyvtár képmanipulációhoz és -feldolgozáshoz
Nyílt forráskódú PHP-könyvtár, amely lehetővé teszi a JPEG, PNG, GIF, TIF, BMP, ICO, PSD, WebP képek egyszerű létrehozását, olvasását, módosítását, átméretezését és kivágását.
Az Intervention Image egy nyílt forráskódú PHP képszerkesztő és -feldolgozó könyvtár, amely lehetővé teszi a szoftverfejlesztők számára, hogy saját PHP-alkalmazásukon belül képeket hozzanak létre, módosítsanak és állítsanak össze. Az Intervention Image opcionálisan támogatja a Laravelt, és szolgáltatóval és homlokzatokkal is rendelkezik az egyszerű integráció érdekében. A könyvtár nagyon stabil, és segít minden feladat egyszerű és minimális kóddal történő kezelésében.
A könyvtár támogatja a két leggyakoribb képfeldolgozó könyvtárat, a GD Library-t és az Imagick-et. Számos népszerű képfájl-formátumot támogat, például JPEG, PNG, GIF, TIF, BMP, ICO, PSD, WebP és még sok más. Az olvasható képformátumok a választott illesztőprogramtól (GD vagy Imagick) és a helyi konfigurációtól függenek.
A könyvtár több fontos képfeldolgozási funkciót is támogat, mint például képek létrehozása a semmiből, meglévő képek olvasása, meglévő képek szerkesztése, miniatűrök létrehozása, effektusok alkalmazása a képekre, vízjel hozzáadása a képekhez, nagy képfájlok formázása, képek átméretezése. igényeinek megfelelően, szöveget és alakzatokat rajzolhat a képekre, képinformációkat kérhet le és még sok más.
Az Intervention Image használatának megkezdése
PHP 5.4+ szükséges hozzá GD2 kiterjesztéssel. Az Intervention Image telepítésének legjobb módja a Composer. Kérjük, használja a következő parancsot.
Az Intervention Image telepítése a Composer segítségével
$ php composer.phar require intervention/image
Új képek létrehozása PHP-n keresztül
A nyílt forráskódú Intervention Image könyvtár lehetővé teszi a szoftverfejlesztők számára, hogy új üres képpéldányt hozzanak létre PHP-parancsok segítségével a saját alkalmazásaikban. A fejlesztők egyéni szélességet, magasságot és tetszés szerinti háttérszínt is megadhatnak. Ha a szín nincs megadva, az alapértelmezett vászon hátteret használja, amely átlátszó.
Új kép létrehozása és fájlméret lekérése PHP-n keresztül
// create an image
$img = Image::make('public/foo.jpg');
// get file size
$size = $img->filesize();
Képek olvasása PHP API-n keresztül
A Free Intervention Image könyvtár támogatja a különféle típusú képek könnyű olvasását JavaScript alkalmazáson belül. Meg kell adnia a kép teljes elérési útját, és a többit a könyvtár könnyedén elvégzi. Megadhat URL-t is a képhez, és könnyen kiolvashatja. Bináris képadatokat, base64 kódolású képadatokat és egyebeket is képes olvasni.
Kép vágása PHP segítségével
Az Intervention Image könyvtár olyan funkciókat tartalmaz, amelyek segítségével programozottan le lehet vágni a képeket néhány soros JavaScript kód használatával. A könyvtár lehetővé teszi a fejlesztők számára, hogy egyéni szélességet és magasságot biztosítsanak a téglalap alakú részhez, és kivágják az aktuális képnek azt a részét a megadott szélességnek és magasságnak megfelelően. Opcionálisan megadhatja az x, y koordinátákat is, hogy a kivágás bal felső sarkát egy adott helyre tolja el.
Kép levágása PHP-n keresztül
// open file a image resource
$img = Image::make('public/foo.jpg');
// crop image
'$img->crop(100, 100, 25, 25);
Képszűrők használata
A szűrők olyan parancsok, amelyek kiemelhetnek bizonyos funkciókat, vagy eltávolíthatnak más funkciókat. Hasznos lehetőséget ad a képátalakítási parancsok egy dedikált objektumba csoportosítására, és az objektum használható effektusok alkalmazására a képen. Az objektum határozza meg, hogy melyik parancsot és milyen sorrendben használja. Az Intervention Image könyvtár lehetővé teszi saját szűrők meghatározását és azok egyszerű alkalmazását is.
Szűrő alkalmazása a képre PHP-n keresztül
namespace Intervention\Image\Filters;
class DemoFilter implements FilterInterface
{
const DEFAULT_SIZE = 10;
private $size;
// Creates new instance of filter
public function __construct($size = null)
{
$this->size = is_numeric($size) ? intval($size) : self::DEFAULT_SIZE;
}
public function applyFilter(\Intervention\Image\Image $image)
{
$image->pixelate($this->size);
$image->greyscale();
return $image;
}
}