Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah saya boleh mengubah saiz imej yang dimuat naik kepada 147x147px dalam PHP Menggunakan GD?

Bagaimanakah saya boleh mengubah saiz imej yang dimuat naik kepada 147x147px dalam PHP Menggunakan GD?

Susan Sarandon
Lepaskan: 2024-12-17 05:03:25
asal
938 orang telah melayarinya

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

Penskalaan Imej dalam PHP

Pengenalan Kes

Dalam PHP, anda ingin menulis beberapa kod untuk menghantar borang Any imej yang dimuat naik diubah secara automatik kepada 147x147px. Anda ingin mengecilkan saiz fail dengan menskalakan imej.

Pelaksanaan Kod

Untuk menyelesaikan tugasan ini, anda boleh menggunakan fungsi ImageMagick atau GD PHP untuk memproses imej.

Menggunakan GD, anda boleh mencapai fungsi berikut:

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;
}
Salin selepas log masuk

Anda boleh memanggil fungsi ini seperti berikut:

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

Sebagai peraturan biasa, pensampelan semula imej oleh GD Ia mengurangkan saiz fail dengan ketara, terutamanya apabila pensampelan semula imej kamera digital mentah.

Atas ialah kandungan terperinci Bagaimanakah saya boleh mengubah saiz imej yang dimuat naik kepada 147x147px dalam PHP Menggunakan GD?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan