gpt4 book ai didi

php - 在 (PHP/GD) 中调整图像大小

转载 作者:行者123 更新时间:2023-12-04 00:06:49 25 4
gpt4 key购买 nike

我正在寻求帮助/建议,以找到使用 PHP/GD 将图像调整为尽可能小的最有效方法,同时保留原始图像的纵横比,但确保调整后的图像大于定义的最小宽度和高度。

例如,调整后的图像必须具有 宽度 >= 400 和高度 >= 300,但应尽可能接近这些尺寸,同时保持原始纵横比。

“风景”图片的理想高度为 300 或略大,宽度 >= 400,而“肖像”图片的理想尺寸为宽度为 400 或稍大,高度 >= 300

最佳答案

我相信这就是您要找的;具体来说,中间栏的图片:

When source image is wider When source image is taller When aspect ratios are same

以下代码源自Crop-To-Fit an Image Using ASP/PHP :

list(
$source_image_width,
$source_image_height
) = getimagesize( '/path/to/image' );

$target_image_width = 400;
$target_image_height = 300;

$source_aspect_ratio = $source_image_width / $source_image_height;
$target_aspect_ratio = $target_image_width / $target_image_height;

if ( $target_aspect_ratio > $source_aspect_ratio )
{
// if target is wider compared to source then
// we retain ideal width and constrain height
$target_image_height = ( int ) ( $target_image_width / $source_aspect_ratio );
}
else
{
// if target is taller (or has same aspect-ratio) compared to source then
// we retain ideal height and constrain width
$target_image_width = ( int ) ( $target_image_height * $source_aspect_ratio );
}

// from here, use GD library functions to resize the image

关于php - 在 (PHP/GD) 中调整图像大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1830829/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com