gpt4 book ai didi

php - imagecopyresampled 调整大小和裁剪图像 - 不返回预期结果

转载 作者:可可西里 更新时间:2023-11-01 13:40:42 25 4
gpt4 key购买 nike

imagecopyresized ( 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 )

这就是我想要做的:我有一个大小为 600x1000 像素的图像,我想在将该图像调整为 300x500 像素后创建一个 100x100 像素的缩略图,缩略图左上角的 x 坐标应该是在 100(src x) 和 120(src y)。

按照手册上的理解,命令应该是

$dst_image = imagecreatetruecolor(100,100);
$src_image = imagecreatefromjpeg('/home/sandbox/imagetoresize.jpg');
imagecopyresized ($dst_image, $src_image, 0, 0, 100, 120, **300 , 500 , 600 , 1000** )

它可以很好地裁剪图像,但不能正确调整大小。我从来没有让它与我在图像编辑器(GIMP)中看到的相匹配。我究竟做错了什么?我确认所有数字都是正确的,但无论我做什么,它总是向上或向下移动。

最佳答案

这是我使用 PHP GD 编写的函数的链接,用于将任何大小的图像调整为任意大小。它有一个解释,以及使用 crop-to-fit 或 letterboxing 来适应目标纵横比的选项。

http://www.spotlesswebdesign.com/blog.php?id=1

更新

它应该看起来更像这样。

$dst_image = imagecreatetruecolor(100,100);
$src_image = imagecreatefromjpeg('/home/sandbox/imagetoresize.jpg');
imagecopyresized ($dst_image, $src_image, 0, 0, 100, 120, 100, 100, 400, 400);

从源中取出一个 400x400 的正方形,并将其复制到目标中的一个 100x100 的正方形中。源方 block 的左上角是 100 x 和 120 y。 x 和 y 表示距左上角的像素数。

关于php - imagecopyresampled 调整大小和裁剪图像 - 不返回预期结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4631931/

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