// get the current size of your image
$data = getimagesize('link/your/image.jpg');
// your defined width
$new_width = 350;
// calculate the ratio
$ratio = $data[0] / $new_width;
// apply the ratio to get the new height of your image
$new_height = round($data[1] / $ratio);
4条答案
按热度按时间8nuwlpux1#
使用Javascript。
请参阅本教程:http://www.ajaxblender.com/howto-resize-image-proportionally-using-javascript.html
使用另一个人发布的函数:
6mw9ycah2#
我想这就是你要找的php函数:getimagesize
来自手册:
返回一个包含7个元素的数组。
索引0和1分别包含图像的宽度和高度。
下面是一个简短的示例,说明如何使用它来解决您的问题:
......搞定!
t9aqgxwy3#
使用getImagesize并通过除以纵横比获得新的高度。
wlzqhblo4#
您已经用PHP标记了您的问题,所以假设您想使用PHP:
要从图像资源获取图像的高度或宽度,请使用
imagesx()
和imagesy()
。http://www.php.net/manual/en/function.imagesx.phphttp://www.php.net/manual/en/function.imagesy.php
要从图像文件中获取图像的高度和宽度,请使用
getimagesize()
。该函数返回的数组中的第0项和第1项是图像的宽度和高度。http://www.php.net/manual/en/function.getimagesize.php如果图像宽500像素,高750像素,容器宽350像素,则可以通过将所需宽度除以实际宽度来计算比率:也就是
0.7
,要计算高度,乘以这个比值(750 * 0.7
或525
)。