Heim  >  Artikel  >  Backend-Entwicklung  >  Zusammenfassung mehrerer Funktionen der PHP-GD-Bibliothek zum Generieren von Bildern

Zusammenfassung mehrerer Funktionen der PHP-GD-Bibliothek zum Generieren von Bildern

高洛峰
高洛峰Original
2016-12-26 12:45:451508Durchsuche

Nachdem Sie das Bild mithilfe der in der GD-Bibliothek bereitgestellten Funktionen dynamisch gezeichnet haben, müssen Sie es an den Browser ausgeben oder das Bild speichern. In PHP kann die dynamisch gezeichnete Leinwand direkt in vier Bildformate generiert werden: GIF, JPEG, PNG und WBMP. Bilder in diesen Formaten können durch Aufrufen der folgenden vier Funktionen generiert werden:

  bool imagegif(resource $image[,string $filename])                              //以GIF格式将图像输出
  bool imagejpeg(resource $image[,string $filename[,int $quality]])                        //以JPEG格式将图像输出
  bool imagepng(resource $image[,string $filename])                                 //以PNG格式将图像输出
  bool imagewbmp(resource $image[,string $filename[,int $foreground]])                      //以WBMP格式将图像输出

Die Verwendung der oben genannten vier Funktionen ist ähnlich und die Verwendung der ersten beiden Parameter ist dieselbe. Der erste Parameter $image ist erforderlich und ist das zuvor eingeführte Bildreferenzhandle. Wenn diese Funktionen andere Parameter bereitstellen, wird das Originalbild beim Zugriff direkt gestreamt und das dynamisch ausgegebene Bild im Browser angezeigt. Sie müssen jedoch die Funktion header() verwenden, um vor der Ausgabe Header-Informationen zu senden, die verwendet werden, um den Browser zu benachrichtigen, den richtigen MIME-Typ zum Parsen des empfangenen Inhalts zu verwenden, damit er weiß, dass wir Bilder anstelle von textähnlichem HTML senden . Der folgende Codeausschnitt erkennt automatisch die von der GD-Bibliothek unterstützten Bildtypen, um ein portableres PHP-Programm zu schreiben. Wie unten gezeigt:

<?php
    if(function_exists("imagegif")){                //判断生成GIF格式图像的函数是否存在
        header("Content-type:image/gif");           //发送标头信息设置MIME类型为image/gif
        imagegif($im);                              //以GIF格式将图像输出到浏览器
    }elseif(function_exists("imageipeg")){
        header("Content-type:image/jpeg");
        imagejpeg($im,"",0.5);
    }elseif(function_exists("imagepng")){
        header("Content-type:image/png");
        imagepng($im);
    }elseif(function_exists("imagewbmp")){
        header("Content-type:image/wbmp");
        imagewbmp($im);
    }else{
        die("在PHP服务器中,不支持图像");
    }
?>

Wenn Sie mit PHP dynamisch gezeichnete Bilder auf dem lokalen Server speichern möchten, müssen Sie im zweiten optionalen Parameter eine Dateinamenzeichenfolge angeben. Dadurch wird das Bild nicht nur nicht direkt an den Browser ausgegeben, es entfällt auch die Notwendigkeit, die Funktion header() zum Senden von Header-Informationen zu verwenden. Wenn Sie die Funktion imageJPEG() verwenden, um ein Bild im JPEG-Format zu generieren, können Sie die Qualität des Bildes im JPEG-Format auch über den dritten optionalen Parameter $quality angeben. Der Wert, den dieser Parameter liefern kann, liegt zwischen 0 (schlechteste Qualität, aber kleinste Datei) bis 100 (höchste Qualität, größte Datei) Ganzzahl, der Standardwert ist 75. Sie können der Funktion imageWBMP() auch den dritten optionalen Parameter $forground bereitstellen, um die Vordergrundfarbe des Bildes anzugeben. Der Standardfarbwert ist Schwarz.

Weitere verwandte Artikel, die verschiedene Funktionen der PHP-GD-Bibliothek zum Generieren von Bildern zusammenfassen, finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn