Im vorherigen Artikel „Warum ist der Operator === in PHP schneller als ==? 》Wir stellen Ihnen vor, warum der ===-Operator in PHP schneller ist als ==. Interessierte Freunde können mehr darüber erfahren~
Das Thema dieses Artikels besteht darin, Ihnen beizubringen, wie Sie die JPEG-Bildgröße in PHP anpassen.
Im Prozess der Website-Entwicklung stoßen wir manchmal auf die Anforderung, die Funktion zum Skalieren von Bildern wie Titelbildern, Miniaturansichten, Informationsbildern usw. zu implementieren. Die Größe des Bildes muss entsprechend den Anforderungen angegeben werden, aber jeder sollte auch wissen, dass wir die Bildgröße mit HTML wie folgt ändern können:
<img src="001.jpg" style="max-width:90%" width="100" alt="图片尺寸">
Natürlich liegt der Schwerpunkt dieses Artikels auf der Verwendung von PHP Um die Bildgröße anzupassen, schauen wir uns den Code direkt an:
Der PHP-Code lautet wie folgt:
<?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);
Der Effekt ist wie folgt:
Hier müssen Sie eine wichtige Funktion beherrschen imagecopyresampled( )
: imagecopyresampled()
:
(该函数适用版本PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
imagecopyresampled
imagecopyresampled
– Resample und kopiere einen Teil davon Bild und ändern Sie die Größe; Syntax: 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:源图象的高度。
In 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).
Das obige ist der detaillierte Inhalt vonPHP kann auch die Größe von JPEG-Bildern ändern!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!