PHP 使用纵横比调整图像大小

梅德克

我有这个 PHP 脚本,可以将图像大小调整为 50%(或任何预设百分比)

$filename = 'test.jpg';
$percent = 0.5;

// Content type
header('Content-Type: image/jpeg');

// Get new dimensions
list($width, $height) = getimagesize($filename);
$new_width = $width * $percent;
$new_height = $height * $percent;

// Resample
$image_p = imagecreatetruecolor($new_width, $new_height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);

// Output
imagejpeg($image_p, null, 100);

现在,如果我想将 $new_width 指定为 1200 (px) 并告诉 $new_height 自动计算保持纵横比并将新图像的名称设置为“test-2.jpg”怎么办

$filename = 'test.jpg';

// Content type
header('Content-Type: image/jpeg');

// Get new dimensions
list($width, $height) = getimagesize($filename);
$new_width = 1200;
$new_height = // MUST BE AUTO;

// Resample
$image_p = imagecreatetruecolor($new_width, $new_height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);

// Output
imagejpeg($image_p, null, 100);
亚历克斯·舍斯特罗夫

“保持纵横比”意味着以下等式必须成立:

$new_height / $new_width == $height / $width

因此,计算新高度的公式为:

$new_height = ceil($height * ($new_width/$width));

请注意,ceil确保新高度至少为整数值1(假设新宽度和旧宽度+高度均为正值)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用PHP直接从URL调整图像大小

来自分类Dev

如何使用PHP批量调整图像大小

来自分类Dev

如何使用PHP批量调整图像大小

来自分类Dev

如何使用PHP从URL调整图像大小?

来自分类Dev

使用PHP或CSS调整图像大小?

来自分类Dev

(PHP)图像调整大小失败

来自分类Dev

PHP 保存调整大小的图像

来自分类Dev

如何使用Gd库调整图像大小?的PHP

来自分类Dev

使用PHP重新调整目录中所有图像的大小?

来自分类Dev

使用php和gd调整图像大小并显示

来自分类Dev

如何使用Gd库调整图像大小?的PHP

来自分类Dev

使用PHP重新调整目录中所有图像的大小?

来自分类Dev

在 php 上传之前使用 FileReader 调整多个图像的大小

来自分类Dev

使用 php 调整大小或裁剪 base64 图像

来自分类Dev

如何使用 jCrop 调整图像大小以适应所有纵横比?

来自分类Dev

使用drawInRect调整图像大小,同时保持纵横比不变,例如“缩放纵横比填充”?

来自分类Dev

FPDF:调整图像大小保持纵横比

来自分类Dev

使用PHP imageftbbox-将图像大小调整为字体大小输出?

来自分类Dev

PHP调整图像大小以适合特定区域

来自分类Dev

PHP调整图像大小而不会损失质量

来自分类Dev

调整所有类型的PHP图像的大小

来自分类Dev

PHP调整大小并裁剪居中的顶部图像

来自分类Dev

在PHP中上传时调整图像大小

来自分类Dev

PHP调整图像大小并保存透明PNG

来自分类Dev

PHP图像调整大小不起作用

来自分类Dev

如何调整图像保持约束的大小PHP

来自分类Dev

PHP脚本未调整图像大小

来自分类Dev

如何在 PHP 中保持纵横比的同时将图像调整为固定宽度和高度?

来自分类Dev

如何根据屏幕大小调整php中的图像大小?

Related 相关文章

热门标签

归档