2011-12-05 43 views
11

我想将图像大小调整为最大值width。所以我不在乎图像的高度,但我只是想总是将其调整到特定的宽度。ImageMagick - 调整为最大宽度

我确定我已经完成了这个工作,但我不记得现在是怎么做到的。

回答

29

似乎这是它的做法,注意宽度是第一个参数。

convert -resize '100' image.png 

为别人想知道的高度,那么你可以这样做:

convert -resize 'x100' image.png 

来源:http://www.imagemagick.org/script/command-line-processing.php

编辑(NOV 2014):注意,在ImageMagick的最新版本根据KevinLabécot的评论,您不能再使用引用值。

+4

注意,如果你想调整一堆图像的大小(而不是创建新文件),你可以使用'mogrify'命令而不是'convert' – Eli

+2

看起来不允许使用引号设置大小(无效参数)。我不得不删除引号,它完美地工作:'convert -resize 100 image.png' –

+0

@KevinLabécot你知道这个变化发生在什么版本的ImageMagick中吗? ...如果不是,你知道如果不使用引号在旧版本中工作吗? – Brett

3

你只是在追求数学来计算正确的宽高比吗?

$new_width = 400; // config 
$image_width = 480; // loaded from image 
$image_height = 786; // loaded from image 
$new_height = $new_width * ($image_height/$image_width); 
echo "$image_width x $image_height becomes $new_width x $new_height"; 
+2

Dude,它应该看起来像这样: echo $ image_width。“x”。$ image_height。“become”。$ new_width。“x”。$ new_height; –

+1

双引号解析php变量 – Scuzzy

+1

我知道,但变量应该与html代码分开;) –

相关问题