Esta es una biblioteca que cubre solo los conceptos básicos que necesita al manejar imágenes:
Puede usar LibGD de PHP o un binario ImageMagick instalado localmente.
Usar compositor
composer require splitbrain/slika
Simplemente obtenga un adaptador de la fábrica de Slika, ejecute algunas operaciones y llame save .
Las operaciones se pueden encadenar juntas. Considere que la cadena es un comando. No reutilice el adaptador devuelto por run() , es un objeto de uso único. Todas las operaciones pueden potencialmente lanzar una splitbrainslikaException .
Las opciones (ver más abajo) se pueden pasar como segundo parámetro a la fábrica run .
use splitbrain slika Slika ;
use splitbrain slika Exception ;
$ options = [
' quality ' => 75
];
try {
Slika:: run ( ' input.png ' , $ options )
-> resize ( 500 , 500 )
-> rotate (Slika:: ROTATE_CCW
-> save ( ' output.jpg ' , ' jpg ' );
} catch ( Exception $ e ) {
// conversion went wrong, handle it
}También consulte los documentos de la API para obtener más detalles.
Todas las operaciones de cambio de tamaño mantendrán la relación de aspecto original de la imagen. No habrá distorsión.
Mantener el ancho o la altura en cero calcularán automáticamente el valor para usted.
# fit the image into a bounding box of 500x500 pixels
Slika:: run ( ' input.jpg ' )-> resize ( 500 , 500 )-> save ( ' output.png ' , ' png ' );
# adjust the image to a maximum width of 500 pixels
Slika:: run ( ' input.jpg ' )-> resize ( 500 , 0 )-> save ( ' output.png ' , ' png ' );
# adjust the image to a maximum height of 500 pixels
Slika:: run ( ' input.jpg ' )-> resize ( 0 , 500 )-> save ( ' output.png ' , ' png ' );Similar al cambio de tamaño, pero esta vez la imagen se recortará para que se ajuste a la nueva relación de aspecto.
Slika:: run ( ' input.jpg ' )-> crop ( 500 , 500 )-> save ( ' output.png ' , ' png ' );Gira la imagen. El parámetro pasado es uno de los indicadores de orientación exif:
Para su conveniencia hay tres constantes definidas:
Slika::ROTATE_CCW Rotación en sentido antihorarioSlika::ROTATE_CW Rotación en sentido horarioSlika::ROTATE_TOPDOWN Rotación completa de 180 grados Slika:: run ( ' input.jpg ' )-> rotate (Slika:: ROTATE_CW )-> save ( ' output.png ' , ' png ' );Gira la imagen de acuerdo con la etiqueta de rotación EXIF si se encuentra.
Slika:: run ( ' input.jpg ' )-> autorotate ()-> save ( ' output.png ' , ' png ' ); Las opciones se pueden pasar como una matriz Associatiave como el segundo parámetro en Slika::run .
Las siguientes opciones están disponibles actualmente:
| Opción | Por defecto | Descripción |
|---|---|---|
imconvert | /usr/bin/convert | El camino hacia el binario convert de ImageMagick |
quality | 92 | La calidad al escribir imágenes JPEG |