array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'pt_BR', ), 'this' => array ( 0 => 'function.imagegif.php', 1 => 'imagegif', ), 'up' => array ( 0 => 'ref.image.php', 1 => 'Funções de GD e Image', ), 'prev' => array ( 0 => 'function.imagegetinterpolation.php', 1 => 'imagegetinterpolation', ), 'next' => array ( 0 => 'function.imagegrabscreen.php', 1 => 'imagegrabscreen', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'pt_BR', 'path' => 'reference/image/functions/imagegif.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5, PHP 7, PHP 8)
imagegif — Envia a imagem para o navegador ou para um arquivo
imagegif() cria o arquivo GIF
especificado em file
a partir da imagem em image
. O
argumento image
é o retorno da função
imagecreate() ou
imagecreatefrom*
.
O formato da imagem será GIF87a a menos que a imagem tenha se tornado transparente com imagecolortransparent(), e neste caso o formato da imagem será GIF89a.
image
Um objeto GdImage, retornado por uma das funções de criação de imagem, como imagecreatetruecolor().
file
O caminho ou um recurso de stream aberto (que será fechado automaticamente após o retorno desta função) para salvar o arquivo. Se não for definido ou for null
, o stream da imagem bruta será enviado diretamente.
Retorna true
em caso de sucesso ou false
em caso de falha.
Entretanto, se a biblioteca libgd falhar ao gerar a imagem, esta função retornará true
.
Versão | Descrição |
---|---|
8.0.0 |
O parâmetro image agora espera uma instância de GdImage;
anteriormente, um resource gd válido era esperado.
|
Exemplo #1 Mostrando uma imagem usando imagegif()
<?php
// Cria uma nova instância de imagem
$im = imagecreatetruecolor(100, 100);
// Deixa o fundo branco
imagefilledrectangle($im, 0, 0, 99, 99, 0xFFFFFF);
// Desenha uma string na imagem
imagestring($im, 3, 40, 20, 'GD Library', 0xFFBA00);
// Mostra a imagem no navegador
header('Content-Type: image/gif');
imagegif($im);
imagedestroy($im);
?>
Exemplo #2 Convertendo uma imagem PNG para GIF usando imagegif()
<?php
// Carrega o PNG
$png = imagecreatefrompng('./php.png');
// Grava a imagem como GIF
imagegif($png, './php.gif');
// Libera a memória
imagedestroy($png);
// Pronto
echo 'Convertida a imagem PNG para GIF com sucesso!';
?>
Nota:
O extrato de código a seguir permite esrever aplicações PHP mais portáveis através de auto-detecção do tipo de suporte GD disponível. Substitua sequência
header ("Content-Type: image/gif"); imagegif ($im);
pela sequência mais flexível:<?php
// Cria uma nova instância de imagem
$im = imagecreatetruecolor(100, 100);
// Faz aqui algumas operações
// Lida com a saída
if(function_exists('imagegif'))
{
// Para GIF
header('Content-Type: image/gif');
imagegif($im);
}
elseif(function_exists('imagejpeg'))
{
// Para JPEG
header('Content-Type: image/jpeg');
imagejpeg($im, NULL, 100);
}
elseif(function_exists('imagepng'))
{
// Para PNG
header('Content-Type: image/png');
imagepng($im);
}
elseif(function_exists('imagewbmp'))
{
// Para WBMP
header('Content-Type: image/vnd.wap.wbmp');
imagewbmp($im);
}
else
{
imagedestroy($im);
die('Não existe suporte para imagem neste servidor PHP');
}
// Se o suporte a imagem foi encontrado para um destes
// formatos, libera-se a memória
if($im)
{
imagedestroy($im);
}
?>
Nota:
Pode-se usar a função imagetypes() para verificar a presenção de vários formatos de imagem suportados:
<?php
if(imagetypes() & IMG_GIF)
{
header('Content-Type: image/gif');
imagegif($im);
}
elseif(imagetypes() & IMG_JPG)
{
/* ... etc. */
}
?>