PHP bietet eine Funktion , um die Breite und Höhe eines Bildes zu erhalten. Mit diesen Informationen und einige einfache Mathematik , ist es möglich, die Größe neu ein Bild für die Anzeige ohne die Verwendung einer Grafik-Bibliothek . Wenn Sie dauerhaft die Größe neu ein Bild wollen, müssen Sie eine Grafik-Bibliothek verwenden . PHP bietet Funktionen , um die GD -Grafik-Bibliothek verwenden, um Bilder zu manipulieren. Anleitung
1
Ermittelt die Größe einer Bilddatei mit dem " getimagesize "-Funktion in PHP. Capture the Rückgabewert aus der Funktion und extrahieren Sie die Bildbreite und-höhe . Geben Sie z. B. :
< php
define ( "Breite" , 0);
define ( "Höhe" , 1);
< p > $ image_size = getimagesize ( " meinbild.jpg ");
$ width = $ image_size [ wIDTH ] ;
$ height = $ image_size [ HÖHE ] ;
2
Set Variablen gleich der Soll- Breite und Höhe für die Größenänderung . Geben Sie z. B. :
$ target_width = 100;
$ target_height = 100;
3
Berechnen Sie das Verhältnis von neu bis alt Breite und Höhe und wählen Sie die niedrigste der beiden Verhältnisse . Berechnen Sie die neue Breite und Höhe auf der Grundlage dieses Verhältnisses . Geben Sie z. B. :
$ ratio_width = $ target_width /$ width ;
$ ratio_height = $ target_height /$ height ;
$ ratio = min ( $ ratio_width , $ ratio_height );
$ NeueBreite = intval ($ Ratio * $ width );
$ new_height = intval ($ Ratio * $ height ); ?
>
4
Zeigen Sie das Bild mit der neuen Größe , indem sie die " Breite " und " Höhe "-Attribute in HTML "img "-Tag. Geben Sie zum Beispiel : echo
< img src = " meinbild.jpg " alt = " Mein Bild " width = " < php echo $ NeueBreite > ? " Height = " < $ php ? new_height ? > "/>
5
Re -size das Bild dauerhaft , indem Sie eine Kopie des Bildes als neues Bild und Skalierung , dass neue Bild mit der Funktionalität von der GD -Grafik-Bibliothek zur Verfügung gestellt. ? Geben Sie z. B. :
< php
$ image = imagecreatefromjpeg ( " meinbild.jpg ");
$ new_image = imagecreatetruecolor ($ target_width , $ target_height ) ;
imagecopyresampled ($ new_image , $ image , 0, 0 , 0, 0 , $ target_width , $ target_height , $ width , $ height );
6
anzeigen re - sized image . Geben Sie z. B. :
imagejpeg ($ new_image , null , 100);
>
?