Das Verarbeiten von Bildern in PHP ist ziemlich leistungsfähig, insbesondere bei der Verwendung der GD -Bibliothek. In diesem Artikel wird angezeigt, wie Sie einen Retro -Spiegel -Bild -Effekt über ImageFlip () und ImageFilter () -Funktionen erstellen. Dieser Spezialeffekt wird üblicherweise in der Retro-Fotografie oder der Bildverarbeitung im Filmstil verwendet und ist sowohl praktisch als auch künstlerisch.
Erstens brauchen wir ein Originalbild, vorausgesetzt, der Pfad lautet:
$source = 'https://m66.net/images/sample.jpg';
Sie können lokale Bilder oder Online -Ressourcen verwenden. Stellen Sie jedoch sicher, dass das Bildformat der unterstützte Typ ist (z. B. JPEG, PNG).
Verwenden Sie ImagecreateFromjpeg (), um das Bild zu laden, und erreichen Sie dann horizontal durch ImageFlip (), um den Bildeffekt zu simulieren:
<?php
$source = 'https://m66.net/images/sample.jpg';
$image = imagecreatefromjpeg($source);
// Spiegelverarbeitung:Horizontaler Flip
imageflip($image, IMG_FLIP_HORIZONTAL);
Hier verwenden wir img_flip_horizontal . Wenn Sie vertikal oder bidirektional umdrehen möchten, können Sie auch andere Modi wie img_flip_vertical oder img_flip_both ausprobieren.
Als nächstes fügen wir Retro -Filter über ImageFilter () hinzu. Zu den allgemeinen Retro -Stilen gehören normalerweise die Reduzierung der Sättigung, das Hinzufügen von Tönen (SEPIA) usw.
// In Graustufenbild konvertieren
imagefilter($image, IMG_FILTER_GRAYSCALE);
// Überlagerung gelbe Töne,Erstellen Sie ein Retro -Gefühl
imagefilter($image, IMG_FILTER_COLORIZE, 100, 50, 0);
// Kontrast erhöhen,Verstärkungseffekt
imagefilter($image, IMG_FILTER_CONTRAST, -15);
Das Kombinieren dieser Filter verleiht dem Bild die Textur der alten Fotos mit den fleckigen Jahren.
Nach Abschluss der Verarbeitung können Sie das Bild direkt in den Browser ausgeben oder es als neue Datei speichern:
// Ausgabe Bild zum Browser
header('Content-Type: image/jpeg');
imagejpeg($image);
// Oder als neue Datei speichern
// imagejpeg($image, 'vintage_mirror.jpg');
// Ressourcen aufräumen
imagedestroy($image);
?>
Wenn Sie eine raffinierte Filtersteuerung benötigen, können Sie ImageFilter () mehrmals überlagern und verschiedene numerische Kombinationen ausprobieren.
Obwohl die GD -Bibliothek von PHP nicht so gut ist wie professionelle Bildverarbeitungssoftware, reicht die Verarbeitung von Bildern in einem Webprojekt aus, um die meisten Anforderungen zu erfüllen.
Wenn Sie diese Funktion auf einer dynamischen Website (z. B. https://m66.net/portfolio.php ) verwenden, stellen Sie sicher, dass der Server -Support aktiviert ist.
Sie können den obigen Code in die Testseite einbetten, ihn in Ihrem Browser öffnen und das in Echtzeit generierte Retro -Spiegelbild anzeigen. Wenn Sie die Interaktivität verbessern möchten, können Sie auch HTML -Formulare kombinieren, um die Funktion von Benutzern zu erreichen, die Bilder hochladen und Filter automatisch anwenden.