International PHP Conference Munich 2021

imagegd2

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

imagegd2Output GD2 image to browser or file

Beschreibung

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

Outputs a GD2 image to the given file.

Parameter-Liste

image

Eine von den verschiedenen Erzeugungsfunktionen wie imagecreatetruecolor() gelieferte Grafikressource.

image

Der Pfad unter dem das Bild gespeichert werden soll. Ist dies nicht gesetzt oder null wird der rohe Bilddatenstrom direkt ausgegeben.

chunk_size

Chunk size.

mode

Either IMG_GD2_RAW or IMG_GD2_COMPRESSED. Default is IMG_GD2_RAW.

Rückgabewerte

Gibt bei Erfolg true zurück. Im Fehlerfall wird false zurückgegeben.

Achtung

Wenn libgd das Bild nicht ausgeben kann, gibt diese Funktion true zurück.

Changelog

Version Beschreibung
8.0.3 file is now nullable.
8.0.0 image expects a GdImage instance now; previously, a resource was expected.

Beispiele

Beispiel #1 Outputting a GD2 image

<?php
// Create a blank image and add some text
$im imagecreatetruecolor(12020);
$text_color imagecolorallocate($im2331491);
imagestring($im155,  "A Simple Text String"$text_color);

// Output the image
imagegd2($im);

// Free up memory
imagedestroy($im);
?>

Beispiel #2 Saving a GD2 image

<?php
// Create a blank image and add some text
$im imagecreatetruecolor(12020);
$text_color imagecolorallocate($im2331491);
imagestring($im155,  "A Simple Text String"$text_color);

// Save the gd2 image
// The file format for GD2 images is .gd2, see http://www.libgd.org/GdFileFormats
imagegd2($im'simple.gd2');

// Free up memory
imagedestroy($im);
?>

Anmerkungen

Hinweis:

The GD2 format is commonly used to allow fast loading of parts of images. Note that the GD2 format is only usable in GD2-compatible applications.

Warnung

Die GD und GD2 Bildformate sind proprietäre Bildformate von libgd. Sie sind als veraltet anzusehen, und sollten nur zu Entwicklungs- und Testzwecken verwendet werden.

Siehe auch

  • imagegd() - Output GD image to browser or file
add a note add a note

User Contributed Notes 2 notes

up
3
Nick
10 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
18 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