Heim >Backend-Entwicklung >PHP-Tutorial >Beispiel für die gemeinsame Nutzung der PHP-Verarbeitungsbildgröße

Beispiel für die gemeinsame Nutzung der PHP-Verarbeitungsbildgröße

*文
*文Original
2017-12-23 14:30:121485Durchsuche

Oft sind die von Benutzern hochgeladenen Bilder sehr groß und die direkte Rückgabe des Originalbilds beansprucht viel Serverbandbreite. Zu diesem Zeitpunkt müssen wir die Bildgröße verarbeiten. Wie geht PHP mit der Bildgröße um? In diesem Artikel wird ein Beispiel für die Verwendung der GD-Bibliothek zur Verarbeitung der Bildgröße vorgestellt.

1. Verwenden Sie die PHP-Methode, um die Bildgröße zu ändern und zu speichern

-------------------------- - ---------

Vorbereitungsarbeit: 1. Benötige den Link zum Originalbild 2. GD-Bibliotheksunterstützung

------------ -------------- ---------------------

Nehmen Sie den Originalbildlink an: $url;

Methodenbetrieb:

Schritt eins: $arrimg = getimagesize($url);

+++++++++++++++++ +++++++++++++++ +++++++++++++++++++++++++++

$arrimg: Die Form hierfür ist:

Array
(
    [0] => 350
    [1] => 318
    [2] => 2
    [3] => width="350" height="318"
    [bits] => 8
    [channels] => 3
    [mime] => image/jpeg
)

Erklärung: Die Zahlen in $arrimg[2] stellen den numerischen Index verschiedener Bildtypen dar. Ansicht:

Ergebnisbeschreibung zurückgeben

Index 0 gibt den Pixelwert der Bildbreite an

Index 1 gibt den Pixelwert der Bildhöhe an

Index 2 gibt den Bildtyp an und gibt eine Zahl zurück, wobei 1 = GIF, 2 = JPG, 3 = PNG, 4 = SWF, 5 = PSD, 6 = BMP, 7 = TIFF (Intel-Byte-Reihenfolge), 8 = TIFF (Motorola-Byte-Reihenfolge)

, 9 = JPC, 10 = JP2, 11 = JPX, 12 = JB2, 13 = SWC, 14 = IFF, 15 = WBMP, 16 = XBM

Index 3 gibt eine Zeichenfolge mit Breite und Höhe an, die direkt für HTMLs 270030f25d9ee1adabe638e8e7403bcd Tag

Indexbits gibt die Anzahl der Bits für jede Farbe des Bildes an

Indexkanäle gibt den Kanalwert des Bildes an

Index-Mime. Diese Informationen können verwendet werden, um die korrekten Informationen in den HTTP-Inhaltstyp-Header-Informationen zu senden, wie zum Beispiel:

header("Content-type : image/jpeg");

+++++++++++++++++++++++++++++++++++++++ +++++++++++ +++++++

Schritt 2: Führen Sie eine proportionale Verarbeitung entsprechend der Breite durch: $arrimg[0], der Länge: $arrimg [1] und erhalten Sie die gewünschte Bildgröße entsprechend der Proportion

Stellen Sie hier vorübergehend die Größe des Bildes ein, das Sie erhalten möchten: $newheight $newwidth

++++++++++++++ +++++++++ +++++++++++++++++++++++++++++++++

Schritt 3: $thumb = imagecreatetruecolor($ newwidth,$newheight);

Beschreibung: imagecreatetruecolor() gibt eine Bildkennung zurück, die ein schwarzes Bild der Größe $newwidth und $newheight

+++++ darstellt +++ ++++++++++++++++++++++++++++++++++++++++++++++

Schritt 4: $source = imagecreatefromjpeg($url);

Beschreibung: imagecreatefromjpeg() gibt eine Bildkennung zurück, die das aus dem angegebenen Dateinamen erhaltene Bild darstellt


++++++++++++++++++++++++++++++++++++++++++ +++ ++++++++++++

Schritt 5: ImageCopyResampled($thumb,$source,0,0,0,0,$newwidth,$newheight,$arrimg[ 0],$ arrimg[1]);

imagecopyresampled – Teil des Bildes neu abtasten und in der Größe ändern.

++++++++++++++

Schritt 6:

Bestimmen Sie den Typ und lagern Sie ihn

switch($arrimg[2]){
//支持jpg
case  2:
imagejpeg($thumb,'test.jpg');
break;
//支持png
case 3:
imagejpeg($thumb,'test.jpg');
break;
default:
echo "<script>alert(&#39;带开发其他类型&#39;);</script>";
break;
}

Verwandte Empfehlungen:

HP implementiert eine effiziente Methode zum Ermitteln der Remote-Image-Größe und -Größe

PHP-Bildverarbeitung, Bildhintergrund und Leinwandoperationen

Eine Zusammenfassung mehrerer Funktionen der PHP-GD-Bibliothek zum Generieren von Bildern

Das obige ist der detaillierte Inhalt vonBeispiel für die gemeinsame Nutzung der PHP-Verarbeitungsbildgröße. 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