PHP ist eine in der Webentwicklung weit verbreitete Programmiersprache. Sie ist gut lesbar und leicht zu erlernen. Sie hat auch einen hohen Anwendungswert im Bereich der Bildverarbeitung. Vom Upgrade von PHP5.5 auf PHP7.0 hat PHP eine Reihe von Optimierungen und Verbesserungen in der Bildverarbeitung vorgenommen, darunter eine effizientere Speicherverwaltung, eine schnellere Ausführungsgeschwindigkeit, umfangreichere Bildverarbeitungsfunktionen usw. In diesem Artikel wird detailliert beschrieben, wie die Bildverarbeitung in PHP7.0 durchgeführt wird.
1. GD-Bibliothek
Bildverarbeitung ist ein wesentlicher Bestandteil der Webentwicklung, daher stellt PHP viele Bibliotheken zur Verfügung, die Webentwicklern bei der Bildverarbeitung helfen, von denen die GD-Bibliothek die gebräuchlichste ist. Die GD-Bibliothek ist eine Erweiterungsbibliothek für PHP, die viele einfache und benutzerfreundliche Funktionen zum Verarbeiten von Bildern bereitstellt, wie z. B. Skalieren, Drehen, Scheren usw. In PHP7.0 wurde auch die GD-Bibliothek einigen Optimierungen unterzogen. Um die GD-Bibliothek zu verwenden, kann sie über die Erweiterungsanweisung in der Datei php.ini aktiviert werden und muss während der PHP-Installation aktiviert werden.
2. Installieren Sie die GD-Bibliothek
Bevor Sie die GD-Bibliothek verwenden, müssen Sie prüfen, ob PHP diese Bibliothek aktiviert hat. Sie können PHP-Konfigurationsinformationen über die Funktion phpinfo() anzeigen, einschließlich Informationen zur GD-Bibliothek. Sie können mit der folgenden Methode überprüfen, ob die GD-Bibliothek installiert ist:
<?php phpinfo(); ?>
Wenn Sie die GD-Erweiterungsmodultabelle nicht sehen, bedeutet dies, dass die GD-Bibliothek nicht installiert wurde. Um die GD-Bibliothek zu installieren, können Sie die folgenden Schritte ausführen:
Besuchen Sie die offizielle Website der GD-Bibliothek (https://libgd.github.io/) und laden Sie das entsprechende Installationspaket herunter.
Um die GD-Bibliothek zu installieren, müssen Sie zunächst die Abhängigkeiten gd, libpng, libjpeg und libfreetype installieren, die vom verwendeten Betriebssystem abhängen.
In Ubuntu können diese Abhängigkeiten beispielsweise mit dem folgenden Befehl installiert werden:
sudo apt-get install libpng-dev libjpeg-dev libfreetype6-dev
Kompilieren und installieren Sie die GD-Bibliothek mit dem folgenden Befehl:
./configure make make install
Geben Sie die php.ini-Datei (oder php-fpm.ini im Fall von PHP-FPM) ein und finden Sie die folgenden Anweisungen:
;extension=gd.so
Entfernen Sie das Semikolon davor, kommentieren Sie es aus, speichern Sie es und starten Sie den Server neu.
3. Bildverarbeitung
Zuerst müssen Sie eine Leinwand erstellen. Sie können die Funktion imagecreatetruecolor() der GD-Bibliothek verwenden, um eine Leinwand mit einer bestimmten Größe und Farbe zu erstellen. Der folgende Code erstellt beispielsweise eine Leinwand mit den Abmessungen 400 x 400 Pixel und der Hintergrundfarbe Weiß:
$image = imagecreatetruecolor(400, 400); $background = imagecolorallocate($image, 255, 255, 255); imagefill($image, 0, 0, $background);
Um ein Bild zu bearbeiten, muss die Bilddatei in den Speicher eingelesen werden. Bilder können mit der Funktion imagecreatefromxxx() der GD-Bibliothek gelesen werden. xxx steht für verschiedene Bilddateiformate wie JPEG, PNG, GIF usw. Der folgende Code liest beispielsweise ein JPEG-Bild mit dem Namen „test.jpg“:
$image = imagecreatefromjpeg('test.jpg');
Das Skalieren eines Bildes ist ein gängiger Bildverarbeitungsvorgang. Sie können die Funktion imagescale() der GD-Bibliothek verwenden, um das Bild zu skalieren und die skalierte Größe anzugeben. Der folgende Code skaliert beispielsweise ein 800 x 600 Pixel großes Bild auf eine 400 x 300 Pixel große Größe:
$image = imagecreatefromjpeg('test.jpg'); $resized_image = imagescale($image, 400, 300);
Ein weiterer häufiger Bildverarbeitungsvorgang ist das Drehen eines Bildes. Mit der Funktion imagerotate() der GD-Bibliothek können Sie ein Bild drehen und den Drehwinkel angeben. Der folgende Code dreht beispielsweise ein Bild um 90 Grad:
$image = imagecreatefromjpeg('test.jpg'); $rotated_image = imagerotate($image, 90, 0);
Bilder zusammenführen ist ein Vorgang, der zwei oder mehr Bilder zu einem neuen Bild kombiniert. Bilder können mit der Funktion imagecopy() der GD-Bibliothek zusammengeführt werden. Der folgende Code führt beispielsweise zwei Bilder zusammen:
$image1 = imagecreatefrompng('image1.png'); $image2 = imagecreatefromjpeg('image2.jpg'); imagecopy($image1, $image2, 0, 0, 0, 0, 200, 200);
Ein Bild ausschneiden ist ein häufiger Vorgang, der mit der Funktion imagecrop() der GD-Bibliothek ausgeführt werden kann. Der folgende Code schneidet beispielsweise ein 200 x 200 Pixel großes Quadrat aus einem Bild mit den Abmessungen 800 x 600 Pixel aus:
$image = imagecreatefromjpeg('test.jpg'); $cropped_image = imagecrop($image, ['x' => 300, 'y' => 200, 'width' => 200, 'height' => 200]);
Zum Schluss wird das verarbeitete Bild in die Antwort ausgegeben. Sie können imagepng(), imagejpeg(), imagegif() und andere Funktionen der GD-Bibliothek verwenden, um Bilder in Dateien in PNG, JPEG, GIF und anderen Formaten auszugeben. Der folgende Code gibt beispielsweise ein JPEG-Bild mit dem Namen „output.jpg“ auf die Antwort aus:
header('Content-Type: image/jpeg'); imagejpeg($image, null, 100);
IV Zusammenfassung
Die Bildverarbeitung in PHP7.0 ist sehr einfach, hauptsächlich mithilfe der verschiedenen Funktionen, die von der GD-Bibliothek bereitgestellt werden Bilder erstellen, bearbeiten und ausgeben. Um die GD-Bibliothek verwenden zu können, müssen Sie die Abhängigkeiten überprüfen und installieren und die entsprechenden Erweiterungen in der Datei php.ini aktivieren. Anschließend können Sie verschiedene GD-Bibliotheksfunktionen verwenden, um gängige Bildverarbeitungsvorgänge wie Skalieren, Drehen, Scheren und Zusammenführen zu implementieren. Für die Bildverarbeitung in der Webentwicklung ist PHP7.0 eine sehr effektive und effiziente Wahl.
Das obige ist der detaillierte Inhalt vonWie führe ich eine Bildverarbeitung in PHP7.0 durch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!