Heim  >  Artikel  >  Backend-Entwicklung  >  So verwenden Sie die Bildverarbeitungsbibliothek GD in PHP

So verwenden Sie die Bildverarbeitungsbibliothek GD in PHP

WBOY
WBOYOriginal
2023-06-27 08:46:361155Durchsuche

Bildverarbeitung ist in modernen Internetanwendungen weit verbreitet, vom Website-Design über die grafische Datenvisualisierung bis hin zu Computer-Vision-Anwendungen, die eine Bildverarbeitung erfordern. PHP bietet eine Bildverarbeitungsbibliothek namens GD, die die gängigste Bildformatverarbeitung unterstützt und herkömmliche Operationen und Konvertierungsmethoden wie Drehung, Skalierung, Zuschneiden, Filter usw. bereitstellt. Heute stellen wir Ihnen vor, wie Sie die GD-Bildverarbeitungsbibliothek für die Bildverarbeitung in PHP-Anwendungen verwenden.

1. Installieren Sie die GD-Erweiterung

Bevor Sie mit der Verwendung der GD-Bibliothek beginnen, müssen Sie sicherstellen, dass die Erweiterung in der Konfigurationsdatei php.ini aktiviert wurde. Wenn Sie einen Linux-Server verwenden, können Sie überprüfen, ob die GD-Erweiterung installiert wurde, indem Sie den folgenden Befehl ausführen:

sudo apt-get install php-gd

Für andere Betriebssysteme und PHP-Versionen lesen Sie bitte sorgfältig die Installationsdokumentation .

2. Bilder laden

In PHP ist das Laden von Bildern mit der GD-Bibliothek sehr einfach:

$filename = "image.jpg";
$image = imagecreatefromjpeg($filename); Der Pfad zu einer Bilddatei wird angegeben und das Bild wird mit der Funktion imagecreatefromjpeg() geladen. Sie können Bilder auch im PNG- und GIF-Format laden, indem Sie die Funktionen imagecreatefrompng() oder imagecreatefromgif() verwenden.

3. Größenänderung

Eine der häufigsten Aufgaben für die meisten Bildverarbeitungsanwendungen ist die Größenänderung eines Bildes. Mit der GD-Bibliothek können Bilder durch Aufrufen der Funktion imagecopyresampled() skaliert werden, zum Beispiel:

$desiredwidth = 800;

$origwidth = imagesx($image);

$origheight = imagesy($ image);


$ratio = $origwidth / $origheight;

if ($desiredwidth / $desiredheight > $rio gewünschte Höhe);

imagecopyresampled($newimage, $image, 0, 0, 0, 0, $newwidth, $newheight, $origwidth, $origheight);

In diesem Code definieren wir zuerst die gewünschte Breite und Höhe, die angepasst werden sollen. Dann erhalten wir die Breite und Höhe des Originalbilds über die Funktionen imagesx() und imagesy(). Wir berechnen das Verhältnis von Originalhöhe und -breite, um sicherzustellen, dass das skalierte Bild das gleiche Seitenverhältnis behält. Erstellen Sie als Nächstes eine neue Leinwand und kopieren Sie das Bild mit der Funktion imagecopyresampled() von der alten Leinwand auf die neue Leinwand.

4. Drehen und Spiegeln

Die GD-Bibliothek unterstützt auch das Drehen und Spiegeln von Bildern, zum Beispiel:

$image = imagecreatefromjpeg($filename);


In diesem Beispiel verwenden wir die Funktion imagerotate(), um das geladene Bild um 45 Grad zu drehen. Wenn Sie horizontal oder vertikal spiegeln möchten, können Sie die Funktion imageflip() verwenden, wie unten gezeigt:

$image = imagecreatefromjpeg($filename);

5

Wenn Sie das Bild zuschneiden müssen, können Sie die Funktion imagecrop() verwenden. Zum Beispiel:

$image = imagecreatefromjpeg($filename);

$y = 20;

$height = 200;

$crop = imagecrop($image, ' x' => $x, 'y' => $width, 'height' => , führen wir das Zuschneiden durch, indem wir die horizontalen und vertikalen Koordinaten sowie die Breite und Höhe des Zuschneidens definieren. Die Funktion „crop()“ gibt dann eine neue Leinwand zurück und weist sie der Variablen „$image“ zu.

6. Filter hinzufügen


Die GD-Bibliothek macht Bilder interessanter und lebendiger, indem sie einige integrierte Filtereffekte bereitstellt. Beispielsweise kann der folgende Code ein Bild in Graustufen umwandeln:

$image = imagecreatefromjpeg($filename);

imagefilter($image, IMG_FILTER_GRAYSCALE);

$crop = imagecrop($image, ['x' => $x, 'y' => $y, 'width' =>

$image = $crop; in Filtern:


IMG_FILTER_NEGATE – Negativer Effekt

IMG_FILTER_EMBOSS – Reliefeffekt

IMG_FILTER_EDGEDETECT – Kantenerkennungseffekt

IMG_FILTER_GAUSSIAN_BLUR – Gaußscher Unschärfeeffekt.

IMG_FILTER _SELECT IVE_BLUR – Nichtlinearer Unschärfeeffekt

7. Speichern Sie das Bild

Nach Abschluss der Bildverarbeitung besteht der letzte Schritt darin, das verarbeitete Bild in einer Datei zu speichern oder in einem Browser auszugeben. Verwenden Sie die Funktion imagejpeg(), um das Bild im JPEG-Format zu speichern:

$destination = "new-image.jpg";

imagejpeg($image, $destination); Funktion zum Speichern des Bildes. Bilder werden im PNG- oder GIF-Format gespeichert.

Zusammenfassung

GD-Bibliothek ist eine leistungsstarke Bildverarbeitungsbibliothek, die PHP-Anwendungen umfangreicher und lebendiger machen kann. In diesem Artikel haben wir erläutert, wie Sie Bilder mithilfe der GD-Bibliothek laden, skalieren, zuschneiden, filtern und speichern. Mit diesen Techniken können Sie die grafischen Effekte Ihrer PHP-Anwendungen auf die nächste Stufe heben!

    Das obige ist der detaillierte Inhalt vonSo verwenden Sie die Bildverarbeitungsbibliothek GD 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