(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.
imageUm objeto GdImage, retornado por uma das funções de criação de imagem, como imagecreatetruecolor().
fileO caminho ou um recurso de fluxo 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 fluxo 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);
?>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');
// 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
{
die('Não existe suporte para imagem neste servidor PHP');
}
?>
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. */
}
?>