Heim >Backend-Entwicklung >PHP-Tutorial >Größe und manipulieren Sie Bilder in PHP (mit Beispielen)
Dieses Tutorial erweitert die grundlegende PHP -GD -Bibliotheksbildmanipulation und baut auf der vorherigen Berichterstattung über das Bildladen, Anschneiden, Drehen, Skalieren und Flippen auf. Wir werden erweiterte Techniken wie das Erfassen von Bildausgangsströmen und das Einbetten von Wasserzeichen untersuchen.
Zuvor haben wir und imagejpeg()
für die Bildausgabe untersucht. Wir können diese Ausgabe mit Funktionen wie imagegif()
erfassen. Zum Beispiel gibt imagecreatefromjpeg()
ohne ein Dateiname -Argument einen Rohstrom aus; imagejpeg()
erfasst diesen Stream. Diese Rohdaten können dann Base64 codiert werden. Umgekehrt kann eine base64 codierte Bildzeichenfolge dekodiert und verwendet werden, um ein Bild über ob_get_contents()
zu erstellen. So speichern Sie ein base64 codiertes Bild: imagecreatefromstring()
<?php $image_data = base64_decode($image_data_base64); $img = imagecreatefromstring($image_data); imagejpeg($img, 'profile.jpg'); imagedestroy($img); ?>Dies dekodiert die Basis64 -Zeichenfolge, erstellt eine Bildressource und speichert sie als JPEG.
Hinzufügen von Wasserzeichen
Wassermarkierung ist mit GD leicht zu erreichen. Dies verbessert Image -Besitz und Markenerkennung.
<?php $im_php = imagecreatefromjpeg('waterfall.jpg'); $watermark = imagecreatefrompng('watermark.png'); $im_width = imagesx($im_php); $im_height = imagesy($im_php); $watermark = imagescale($watermark, $im_width/5); $wt_width = imagesx($watermark); $wt_height = imagesy($watermark); imagecopy($im_php, $watermark, 0.95*$im_width - $wt_width, 0.95*$im_height - $wt_height, 0, 0, $wt_width, $wt_height); $new_name = 'waterfall-watermark.jpg'; imagejpeg($im_php, $new_name); ?>Dieser Code lädt das Hauptbild und das Wasserzeichen, skaliert das Wasserzeichen auf ein Fünftel der Breite des Hauptbildes und positioniert es mit
. Dynamisches Wasserzeichen Die Größe sorgt für eine ordnungsgemäße Skalierung unabhängig von den Abmessungen des Hauptbildes. imagecopy()
Schlussfolgerung
Dieses Tutorial erweitert frühere GD -Funktionen und zeigt fortschrittliche Techniken. Wir haben Stream -Manipulation und Wasserzeichen abgedeckt und praktische Anwendungen für die Bildverarbeitung in PHP anbieten. Experimentieren Sie mit diesen Funktionen, um verschiedene Bildeffekte zu erzeugen.Das obige ist der detaillierte Inhalt vonGröße und manipulieren Sie Bilder in PHP (mit Beispielen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!