Heim >Backend-Entwicklung >PHP-Tutorial >GD-Bibliothek und verwandte Funktionen in PHP

GD-Bibliothek und verwandte Funktionen in PHP

WBOY
WBOYOriginal
2023-06-22 20:52:382776Durchsuche

Die GD-Bibliothek und ihre zugehörigen Funktionen in PHP

Die GD-Bibliothek ist eine sehr leistungsstarke Grafikbibliothek in der PHP-Sprache. Sie kann zum Verarbeiten von Bildern, zum dynamischen Generieren von Bildern und Miniaturansichten usw. verwendet werden. In diesem Artikel werden die relevanten Konzepte und allgemeinen Funktionen der GD-Bibliothek vorgestellt.

  1. Installation der GD-Bibliothek

Bevor Sie die GD-Bibliothek verwenden, müssen Sie sicherstellen, dass die Bibliothek auf dem System installiert wurde. Sie können den folgenden Befehl in die Befehlszeile eingeben, um zu überprüfen, ob die GD-Bibliothek installiert wurde:

php -m | grep -i gd

Wenn „gd“ ausgegeben wird, bedeutet dies, dass die GD-Bibliothek installiert wurde. Wenn die Ausgabe leer ist, müssen Sie sie verwenden Verwenden Sie den folgenden Befehl, um die GD-Bibliothek im System zu installieren:

sudo apt-get install php7.2-gd
  1. Grundkonzept der GD-Bibliothek

GD-Bibliothek ist eine plattformübergreifende Open-Source-Grafikbibliothek, die zum Verarbeiten von Bildern, zum Generieren von Bildern und Miniaturansichten usw. verwendet werden kann . Wenn die GD-Bibliothek ein Bild verarbeitet, wandelt sie das Bild in eine Sammlung von Pixeln um und verarbeitet jedes Pixel. Ein Pixel umfasst normalerweise drei Farbwerte: Rot, Grün und Blau. Durch die Verarbeitung dieser drei Farbwerte können Bilder in verschiedenen Farben erhalten werden.

  1. Häufig verwendete Funktionen der GD-Bibliothek

Die GD-Bibliothek bietet viele sehr nützliche Funktionen, die im Folgenden vorgestellt werden.

3.1. imagecreatetruecolor()

Die Funktion imagecreatetruecolor wird verwendet, um ein Echtfarbenbild zu erstellen:

resource imagecreatetruecolor ( int $width , int $height )

wobei $width und $height die Breite und Höhe des Bildes sind und der Rückgabewert ist ein Bildressourcenhandle.

Das Folgende ist ein Beispiel für die Verwendung der imagecreatetruecolor-Funktion zum Erstellen eines 300x200 roten Rechtecks:

<?php
// 创建一个300x200的真彩色图像
$img = imagecreatetruecolor(300, 200);

//定义红色
$red = imagecolorallocate($img, 255, 0, 0);

//在图像上画一个填充了红色的矩形
imagefilledrectangle($img, 0, 0, 300, 200, $red);

//将图像输出到浏览器
header('Content-type: image/png');
imagepng($img);

//释放图像资源
imagedestroy($img);
?>

3.2. imagecreatefromjpeg()

Die imagecreatefromjpeg-Funktion wird verwendet, um ein aus einer JPG-Bilddatei gelesenes Bildressourcen-Handle zu erstellen, das deklariert wird wie folgt:

resource imagecreatefromjpeg ( string $filename )

Unter diesen ist $filename der Name der JPG-Bilddatei und der Rückgabewert ist ein Bildressourcen-Handle.

Das Folgende ist ein Beispiel für die Verwendung der imagecreatefromjpeg-Funktion zum Lesen und Skalieren einer JPG-Bilddatei:

<?php
//从文件中创建一个图像资源
$src_image = imagecreatefromjpeg('source.jpg');

//获取原始图像的宽和高
list($src_width, $src_height) = getimagesize('source.jpg');

//创建一个新的缩放后的图像资源
$dst_image = imagecreatetruecolor(100, 100);

//将原始图像按照比例缩放到新的图像资源中
imagecopyresampled($dst_image, $src_image, 0, 0, 0, 0, 100, 100, $src_width, $src_height);

//将图像输出到浏览器
header('Content-type: image/png');
imagepng($dst_image);

//释放图像资源
imagedestroy($src_image);
imagedestroy($dst_image);
?>

3.3. imagecopymerge()

Die imagecopymerge-Funktion wird verwendet, um ein Bild auf einem anderen Bild zu überdecken und die Transparenz festzulegen Seine Deklaration lautet wie folgt:

bool imagecopymerge ( resource $dst_im , resource $src_im , int $dst_x , int $dst_y , int $src_x , int $src_y , int $src_w , int $src_h , int $pct )

Unter diesen ist $dst_im das Zielbild-Ressourcenhandle, $src_im das Quellbild-Ressourcenhandle, $dst_x und $dst_y sind die Startkoordinaten im Zielbild, $src_x und $src_y sind es die Startkoordinaten im Quellbild, $src_w und $src_h sind die Breite und Höhe des Quellbilds, $pct ist die Transparenz im Bereich von 0-100.

Hier ist ein Beispiel für die Verwendung der Imagecopymerge-Funktion zum Überlagern eines kreisförmigen Bildes in einer anderen Grundkarte:

<?php
//从文件中创建一个底图
$bg_image = imagecreatefrompng('bg.png');

//从文件中创建一个圆形图像
$circle_image = imagecreatefrompng('circle.png');

//获取圆形图像的宽和高
list($circle_width, $circle_height) = getimagesize('circle.png');

//定义透明度为60%
$pct = 60;

//将圆形图像复制到底图中
imagecopymerge($bg_image, $circle_image, 100, 100, 0, 0, $circle_width, $circle_height, $pct);

//将图像输出到浏览器
header('Content-type: image/png');
imagepng($bg_image);

//释放图像资源
imagedestroy($bg_image);
imagedestroy($circle_image);
?>
  1. Zusammenfassung

GD-Bibliothek ist eine sehr nützliche Grafikbibliothek, mit der Bilder einfach manipuliert und generiert werden können. In diesem Artikel werden die Installation, Grundkonzepte und allgemeinen Funktionen der GD-Bibliothek vorgestellt. Durch das Erlernen und Verwenden der GD-Bibliothek können wir unsere PHP-Anwendungen flexibler und leistungsfähiger machen.

Das obige ist der detaillierte Inhalt vonGD-Bibliothek und verwandte Funktionen in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen 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