Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich mit GD die Größe hochgeladener Bilder in PHP auf 147 x 147 Pixel ändern?

Wie kann ich mit GD die Größe hochgeladener Bilder in PHP auf 147 x 147 Pixel ändern?

Susan Sarandon
Susan SarandonOriginal
2024-12-17 05:03:25981Durchsuche

How Can I Resize Uploaded Images to 147x147px in PHP Using GD?

Bildskalierung in PHP

Falleinführung

In PHP möchten Sie Code schreiben, um eine beliebige Form zu übergeben Hochgeladene Bilder werden automatisch auf 147 x 147 Pixel verkleinert. Sie möchten die Dateigröße reduzieren, indem Sie das Bild skalieren.

Code-Implementierung

Um diese Aufgabe zu erfüllen, können Sie die ImageMagick- oder GD-Funktionen von PHP verwenden, um Bilder zu verarbeiten.

Mit GD können Sie die folgenden Funktionen erreichen:

function resize_image($file, $w, $h, $crop=FALSE) {
    list($width, $height) = getimagesize($file);
    $r = $width / $height;
    if ($crop) {
        if ($width > $height) {
            $width = ceil($width-($width*abs($r-$w/$h)));
        } else {
            $height = ceil($height-($height*abs($r-$w/$h)));
        }
        $newwidth = $w;
        $newheight = $h;
    } else {
        if ($w/$h > $r) {
            $newwidth = $h*$r;
            $newheight = $h;
        } else {
            $newheight = $w/$r;
            $newwidth = $w;
        }
    }
    $src = imagecreatefromjpeg($file);
    $dst = imagecreatetruecolor($newwidth, $newheight);
    imagecopyresampled($dst, $src, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);

    return $dst;
}

Sie können diese Funktion wie folgt aufrufen:

$img = resize_image(‘/path/to/some/image.jpg’, 200, 200);

Als Faustregel gilt Bild-Resampling von GD Es reduziert die Dateigröße erheblich, insbesondere beim Resampling von Rohbildern von Digitalkameras.

Das obige ist der detaillierte Inhalt vonWie kann ich mit GD die Größe hochgeladener Bilder in PHP auf 147 x 147 Pixel ändern?. 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