Esta é uma biblioteca que cobre apenas o básico necessário ao lidar com imagens:
Ele pode usar o libgd do PHP ou um binário ImageMagick instalado localmente.
Use compositor
composer require splitbrain/slika
Basta obter um adaptador da fábrica da Slika, execute algumas operações e ligue para save .
As operações podem ser acorrentadas. Considere a cadeia como um comando. Não reutilize o adaptador retornado por run() , é um objeto de uso único. Todas as operações podem potencialmente lançar uma splitbrainslikaException .
As opções (veja abaixo) podem ser passadas como um segundo parâmetro para a 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
}Verifique também os documentos da API para obter detalhes.
Todas as operações redimensionadas manterão a proporção original da imagem. Não haverá distorção.
Manter a largura ou a altura em zero calculará automaticamente o valor para você.
# 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 ' );Semelhante ao redimensionamento, mas desta vez a imagem será cortada para se ajustar à nova proporção.
Slika:: run ( ' input.jpg ' )-> crop ( 500 , 500 )-> save ( ' output.png ' , ' png ' );Gira a imagem. O parâmetro passado é um dos sinalizadores de orientação EXIF:
Para sua conveniência, existem três constantes definidas:
Slika::ROTATE_CCW rotação no sentido horárioSlika::ROTATE_CW rotação no sentido horárioSlika::ROTATE_TOPDOWN completo de 180 graus rotação Slika:: run ( ' input.jpg ' )-> rotate (Slika:: ROTATE_CW )-> save ( ' output.png ' , ' png ' );Gire a imagem de acordo com a etiqueta de rotação EXIF, se encontrada.
Slika:: run ( ' input.jpg ' )-> autorotate ()-> save ( ' output.png ' , ' png ' ); As opções podem ser aprovadas como matriz associatia como o segundo parâmetro no Slika::run .
As seguintes opções estão disponíveis atualmente:
| Opção | Padrão | Descrição |
|---|---|---|
imconvert | /usr/bin/convert | O caminho para o binário convert de imagemagick |
quality | 92 | A qualidade ao escrever imagens JPEG |