Redimensionar imagem em PHP usando TinyPNG
O redimensionamento da imagem é uma tarefa muito comum para programadores. Cada linguagem de programação tem suas próprias bibliotecas ou técnicas para redimensionar imagens. Neste artigo, estudamos como redimensionar uma imagem em PHP usando o TinyPNG.
Nota: Como o nome contém ‘PNG’ em ‘TinyPNG’, isso não significa que eles permitem apenas imagens no formato png. ‘TinyPNG’ é um nome para sua marca. Eles fornecem suporte para todos os tipos de imagens.
Por que se deve redimensionar imagens?
Quando se trata de um site, o tamanho da imagem é realmente importante. Se você estiver usando imagens de tamanho grande, isso prejudica o carregamento do site. A velocidade lenta do site afeta suas classificações de pesquisa.
Se o tamanho do contêiner de uma imagem for cerca de 200 200 px. Então, ajustar a imagem de tamanho 500 * 500 px em um pequeno recipiente (200 200 px) não é uma boa idéia. Nesse caso, você deve redimensionar a imagem de acordo com o tamanho do contêiner pequeno. Fazendo isso, não apenas reduz o tamanho do arquivo, mas também ajuda a carregar sua página rapidamente.
Por que usar o TinyPNG para redimensionar a imagem?
Existem bibliotecas bastante populares disponíveis em PHP que funcionam bem em termos de redimensionamento de imagens.
Então surge a pergunta: por que usar o TinyPNG para redimensionar a imagem?
Bem, existem alguns motivos para usar o TinyPNG para redimensionar as imagens.
- O TinyPNG reduz imagens para o seu site. Como resultado, suas imagens usarão menos largura de banda e carregarão mais rápido.
- Você não precisa instalar nenhuma extensão além da biblioteca PHP TinyPNG.
Convencido? Vejamos o guia passo a passo de como redimensionar imagens em PHP usando TinyPNG.
Configure o ambiente para TinyPNG
O processo de instalação da biblioteca PHP fornecida pelo TinyPNG é bastante fácil. Abra o prompt de comando no diretório do seu projeto e execute o comando abaixo.
composer require tinify/tinify
Para executar o comando acima, você deve ter instalado o Composer em seu computador.
Em seguida, você precisa de uma chave de API, que pode ser obtida neste link https://tinypng.com/developers.
Tudo que você precisa fazer é inserir seu nome e endereço de e-mail. Você receberá um e-mail sobre a chave API.
Neste estágio, instalamos a biblioteca e você está pronto com sua chave API. Concluímos o ambiente de configuração do TinyPNG.
Redimensionar imagem em PHP usando TinyPNG
Para redimensionar a imagem, precisamos escrever um pequeno trecho de código. Abra seu arquivo PHP em seu editor de arquivos. O redimensionamento do código da imagem é o seguinte.
require_once("vendor/autoload.php");
TinifysetKey("YOUR_API_KEY");
$source = TinifyfromFile("large.jpg"); //image to be resize
$resized = $source->resize(array(
"method" => "fit",
"width" => 150,
"height" => 100
));
$resized->toFile("thumbnail.jpg"); //resized image
O código acima pega uma imagem chamada ‘large.jpg’. Esta é a imagem que devemos redimensionar. Em seguida, ele dá uma chamada ao método API ‘resize’ com alguns parâmetros necessários como método, largura, altura. Por fim, obtivemos a versão redimensionada e compactada da imagem que foi salva como ‘thumbnail.jpg’.
Normalmente, mantemos o nome da miniatura como ‘{filename} -thumbnail.extension’. Em nosso caso, seria ‘large-thumbnail.jpg’. A convenção de nomenclatura é com você. Você pode decidir o formato do nome para sua imagem redimensionada.
O TinyPNG fornece mais 2 métodos além do ‘ajuste’. Esses métodos são ‘escala’ e ‘cobertura’.
Aqui estão as descrições do site do TinyPNG para todos os 3 métodos.
- escala: reduz a imagem proporcionalmente. Você deve fornecer uma ‘largura’ de destino ou uma ‘altura’ de destino, mas não ambos. A imagem dimensionada terá exatamente a largura ou altura fornecida.
- ajustar: Dimensiona a imagem para baixo proporcionalmente para que se encaixe nas dimensões fornecidas. Você deve fornecer uma ‘largura’ e uma ‘altura’. A imagem dimensionada não excederá nenhuma dessas dimensões
- cobrir: Dimensiona a imagem proporcionalmente e recorta-a, se necessário, para que o resultado tenha exatamente as dimensões fornecidas. Você deve fornecer uma ‘largura’ e uma ‘altura’. Quais partes da imagem são cortadas são determinadas automaticamente. Um algoritmo inteligente determina as áreas mais importantes e as deixa intactas.
Pegamos um exemplo com o método ‘fit’ e, conforme mencionado, passamos ‘largura’ e ‘altura’. Você pode tentar outros métodos ‘escala’ e ‘cobertura’.
Esperamos que você entenda como redimensionar imagens em PHP usando Tinypng. Você também pode querer ler nossos artigos relacionados abaixo.