Dalam artikel sebelumnya " Mengapa operator === dalam PHP lebih cepat daripada ==? 》Memperkenalkan mengapa operator === dalam PHP lebih pantas daripada ==, rakan-rakan yang berminat boleh mempelajarinya~
Tema artikel ini adalah untuk mengajar anda cara melaraskan JPEG dalam saiz Imej PHP.
Dalam proses pembangunan laman web, kadangkala kami menghadapi keperluan untuk melaksanakan fungsi penskalaan imej, seperti imej muka depan, lakaran kecil, gambar maklumat, dsb. Saiz imej mesti ditentukan mengikut keperluan, tetapi semua orang juga harus tahu bahawa mengenai saiz imej, kita boleh menggunakan HTML untuk mengubah suainya, seperti berikut:
<img src="001.jpg" style="max-width:90%" width="100" alt="图片尺寸">
Sudah tentu fokus artikel ini menggunakan PHP untuk melaraskan saiz imej Mari kita lihat kod:
Kod PHP adalah seperti berikut:
<?php $filename = '001.jpg'; // 最大宽度和高度 $width = 100; $height = 100; // 文件类型 header('Content-Type: image/jpg'); // 新尺寸 list($width_orig, $height_orig) = getimagesize($filename); $ratio_orig = $width_orig/$height_orig; if ($width/$height > $ratio_orig) { $width = $height*$ratio_orig; } else { $height = $width/$ratio_orig; } // 重采样的图像 $image_p = imagecreatetruecolor($width, $height); $image = imagecreatefromjpeg($filename); imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig); // 输出图像 imagejpeg($image_p, null, 100);
Kesannya. adalah seperti berikut:
Anda memerlukannya di sini Semua orang tahu fungsi penting imagecopyresampled()
:
(Fungsi ini boleh digunakan untuk versi PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
imagecopyresampled
— Pensampelan Semula Salin bahagian imej dan ubah saiznya; Parameter masing-masing:
imagecopyresampled( resource $dst_image, resource $src_image, int $dst_x, int $dst_y, int $src_x, int $src_y, int $dst_w, int $dst_h, int $src_w, int $src_h ): bool
dst_image:目标图象资源。 src_image:源图象资源。 dst_x:目标 X 坐标点。 dst_y:目标 Y 坐标点。 src_x:源的 X 坐标点。 src_y:源的 Y 坐标点。 dst_w:目标宽度。 dst_h:目标高度。 src_w:源图象的宽度。 src_h:源图象的高度。
Akhir sekali, saya ingin mengesyorkan "
Tutorial Video PHPIn other words, imagecopyresampled() will take a rectangular area from src_image of width src_w and height src_h at position (src_x,src_y) and place it in a rectangular area of dst_image of width dst_w and height dst_h at position (dst_x,dst_y).
Atas ialah kandungan terperinci PHP juga boleh mengubah saiz imej JPEG!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!