为什么php中的缩放图像如此复杂?一片混乱
等
我只想缩小一个图像-如果它的宽度超过960px
就像这样:
$path = "sbar/01.jpg";
$w = getimagesize($path)[0];
if($w > 960){scale($path, 960, auto);}做这件事最简单的方法是什么?以下是我的尝试:
$max = 960;
$h = getimagesize($path)[1];
$ratio = $w/$h;
$new_height = $w/$ratio;
$img = imagecreatetruecolor($max, $new_height);
$image = imagecreatefromjpeg($path); 现在怎么办?在960 x auto中仍然没有所需的图像( $path )
发布于 2022-07-26 07:26:12
没有“最好”的方法来做这件事。做这件事有很多不同的方法。如果您有一个已经存储的映像,并且希望对其进行缩放,然后保存缩放版本,则只需这样做:
$image = imagecreatefromjpeg('test.jpg');
$newImage = imagescale($image, 960, -1);
imagejpeg($newImage, 'scaled_image.jpg');首先从给定的路径加载图像。然后缩放它(当图像保存在内存中时)。最后,将其保存在提供的路径下。好了。
-1 (或者如果完全忽略这个值)意味着只缩放另一个维度并保持高宽比。
https://stackoverflow.com/questions/73117700
复制相似问题