imagegd2

(PHP 4 >= 4.0.7, PHP 5, PHP 7, PHP 8)

imagegd2Envia uma imagem GD2 ao navegador ou a um arquivo

Descrição

imagegd2(
    GdImage $image,
    ?string $file = null,
    int $chunk_size = 128,
    int $mode = IMG_GD2_RAW
): bool

Envia uma imagem GD2 para o arquivo informado em file.

Parâmetros

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.

chunk_size

Tamanho do pacote.

mode

Pode ser IMG_GD2_RAW ou IMG_GD2_COMPRESSED. O padrão é IMG_GD2_RAW.

Valor Retornado

Retorna true em caso de sucesso ou false em caso de falha.

Cuidado

Entretanto, se a biblioteca libgd falhar ao gerar a imagem, esta função retornará true.

Registro de Alterações

Versão Descrição
8.0.3 file agora pode ser nulo.
8.0.0 O parâmetro image agora espera uma instância de GdImage; anteriormente, um resource gd válido era esperado.

Exemplos

Exemplo #1 Mostrando uma imagem GD2

<?php
// Cria uma imagem vazia e adiciona algum texto
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, "A Simple Text String", $text_color);

// Mostra a imagem
imagegd2($im);

// Libera memória
imagedestroy($im);
?>

Exemplo #2 Saving a GD2 image

<?php
// Cria uma imagem vazia e adiciona algum texto
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, "A Simple Text String", $text_color);

// Grava a imagem GD2
// O formato de arquivo para imagens GD2 é .gd2, consulte http://www.libgd.org/GdFileFormats
imagegd2($im, 'simple.gd2');

// Libera memória
imagedestroy($im);
?>

Notas

Nota:

O formato GD2 é usado normalmente para permitir carregamento rápido de partes de imagens. Observe que o formato GD é utilizável somente em aplicações compatíveis com GD2.

Aviso

Os formatos de imagem GD e GD2 são formatos de imagem proprietários da biblioteca libgd. Eles devem ser considerados obsoletos e só devem ser usados para propósitos de desenvolvimento e testes.

Veja Também

  • imagegd() - Envia uma imagem GD para o navegador ou para um arquivo
add a note add a note

User Contributed Notes 2 notes

up
3
Nick
13 years ago
You can use this function in combination with imagecreatefromstring() to clone the gd resource with minimum fuss (no writing to tmp file):

<?php
function cloneGd($gd)
{
   
ob_start();
   
imagegd2($gd);
    return
imagecreatefromstring(ob_get_clean());
}
?>
up
0
mark at teckis dot com
21 years ago
yes, the gd2 file format does improve the speed of image creations as the data-setup is designed to be native for the GD function - ie, the image doesn't have to be converted to a usable format prior to processing.

you may also note that the newer gd2 format creates much smaller size files than the older imagegd function, certainly for images involving chunks of single colours anyway. you'll probably find this function most useful for saving overlay images or background images used in larger image creation scripts.

to read a ping or jpeg image (.png / .jpg) and save a .gd2 version to server...

$img = $_GET['img'];
if(file_exists($img))
    {
    $dim = getimagesize($img);
    $cr = ($dim[2] < 4) ? ($dim[2] < 3) ? ($dim[2] < 2) ? NULL : imagecreatefromjpeg($img) : imagecreatefrompng($img) : Null;
    if($cr !== NULL)
          {
         imagegd2($cr,substr($img,0,strrpos($img,'.')).'.gd2');
          }
    }

should save a copy with the same filename and directory using extension .gd2 - which can then be nicely and swiftly read using either imagecreatefromgd2 or imagecreatefromgd2part
To Top