
Depois de publicar um arquivo de imagem (acesse a postagem sobre upload de arquivo aqui) em alguns casos é necessário redimensionar, girar ou até mesmo inserir uma marca d’água em uma imagem para então reutilizar essa imagem em outros locais de um projeto web.
Na postagem de hoje eu vou contar com uma biblioteca open-source de nome WideImage, no qual pode se obter através desse link.
Vamos começar então:
Após fazer o download do arquivo, vamos criar um novo arquivo PHP e nele faremos a inclusão do arquivo classe da biblioteca, como no exemplo abaixo:
<?php /* RECUPERANDO O ARQUIVO WideImage */ require_once('lib/WideImage.php'); /* | PEGANDO A IMAGEM | Sintaxe: WideImage::load("caminho_da_imagem/nome_da_image.extensao"); */ $img = WideImage::load("imagens/desert.jpg"); /* | PARA REDIMENSIONAR UMA IMAGEM | Sintaxe: $img->resize(largura, altura,'ajuste opcional','escala opcional'); */ $miniatura = $img->resize(100, 75); /* | PARA SALVA A NOVA IMAGEM | Sintaxe: $miniatura->saveToFile("caminho_da_imagem/novo_nome.extensao"); */ $miniatura->saveToFile("imagens/mini_desert.jpg"); ?>
Pronto, a nova imagem foi salva na nossa pasta (não esqueça que essa pasta precisa ter permissão de escrita e leitura).
E para colocar uma marca d’água na minha imagem?
O que será feito é uma mesclagem (a imagem que pode ser a logo como marca d’água e a imagem que irá receber a marca d’água) de duas imagens em uma, vamos lá:
<?php /* RECUPERO A IMAGEM */ $img = WideImage::load('imagens/mini_desert.jpg'); /* RECUPERO A MARCA D'AGUA */ $marca = WideImage::load('imagens/logo.png'); /* | REALIZO A MESCLAGEM | POSICIONANDO NO CANTO INFERIOR DIREITO COM OPACIDADE DE 50% */ $nova_img = $img->merge($marca, 'right - 10', 'bottom – 10', 50); /* SALVO A NOVA IMAGEM IMAGEM */ $nova_img->saveToFile("imagens/desert_com_marca.jpg"); ?>
OBS: Ao utilizar uma marca d’água em formato png (com transparência) ela deve estar no formato de 24bits.
Dúvidas nos comentários e até a próxima.