Criando Imagens com PHP - Parte 1

abril 1, 2008 – 12:19 am

Isso é sério?

Sim, é possível criar imagens com apenas o PHP. Basta ter a biblioteca GD instalada no PHP do seu servidor. Pode-se fazer coisas incríveis utilizando as funções que a biblioteca GD disponibiliza. Uma delas é aquele sistema típico de imagem de verificação em formulários.

Iniciando

O código que apresento é o pontapé inicial para nosso desenvolvimento:

<?php
//diz ao servidor que isto é do tipo mime image/gif
header("Content-type:image/gif");
// cria uma imagem com 200 de largura e 200 de altura
$img = imagecreate(200,200);
//deixo o fundo com a cor azul
$azul = imagecolorallocate($img,0,0,255);
//faço a imagem ser impressa em vídeo
imagegif($img);
//retiro a imagem da memoria
imagedestroy($img);
?>

O resultado é uma imagem inteira azul. Ver exemplo aqui.

Inserindo Texto na Imagem

<?php
header("Content-type:image/gif");
$img = imagecreate(200,200);
$azul = imagecolorallocate($img,0,0,255);
//defino algumas outras cores
$branco = imagecolorallocate($img,255,255,255);
$verde = imagecolorallocate($img,0,255,0);
//escrevendo www.JONASRUTH.com.br em branco
//IMPORTANTE: Neste exemplo copie o arquivo de fonte para a mesma pasta que este arquivo
imagettftext($img,10,0,5,15,$branco,"Arial.ttf","www.JONASRUTH.com.br");
//isso também funcionaria, mas agora em verde!
$meuTexto = "www.JONASRUTH.com.br";
imagettftext($img,10,0,5,40,$verde,"Arial.ttf",$meuTexto);
imagegif($img);
imagedestroy($img);
?>

Agora o resultado é a uma imagem com textos. Ver exemplo aqui.

Para criar imagens JPEG basta alterar o header(”Content-type:image/gif”) para header(”Content-type:image/jpeg”) e o imagegif($img) para imagejpeg($img);

Testando

Para testar este exercício adicione esta imagem a uma pagina HTML assim: <img src="http://www.seuservidor.com.br/criando-imagens-com-php.php" />. Ou diretamente, abrindo o arquivo no seu navegador WEB. Naturalmente o servidor onde o arquivo PHP está necessita ter suporte à linguagem.

Baixe aqui os arquivos-fonte finais.

Caso necessite, no site do PHP (php.net) pode-se encontrar a descrição das funções utilizadas neste tutorial.

Fique atento para a Parte 2 deste artigo. Breve.

E a vida segue. Abraço!
-Jonas Ruth

Compartilhe: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google
  • Furl
  • Live
  • NewsVine
  • Rec6
  • Reddit
  • Spurl
  • StumbleUpon
  • Technorati
  • YahooMyWeb
Tags: biblioteca, criando, gd, gif, imagens, images, JPEG, library, manipulando, PHP

Related posts

Post a Comment