如何在不改变图像尺寸的情况下旋转图像?

时间:2013-02-07 12:22:53

标签: image imagemagick

通过convert -rotate命令旋转图像时,图像尺寸会放大。有没有办法围绕中心旋转并保持图像大小,裁剪边缘?

4 个答案:

答案 0 :(得分:19)

convert image.jpg -distort SRT -45 rotate_cropped_image.png

请参阅http://www.imagemagick.org/Usage/warping/#animations

示例:Animated GIF

另见-distort帮助:http://www.imagemagick.org/script/command-line-options.php?#distort

答案 1 :(得分:0)

我在Imagemagick论坛上找到了这个答案:

一个简单的解决方案,不知道图像的原始大小 是的,是使用Alpha Composite Operator'Src'作为'作物' 图像大小'的操作类型。参见:

http://www.cit.gu.edu.au/~anthony/graphics/imagick6/compose/#src

例如(仅限ImageMagick版本6):

convert image.jpg \( +clone -background black -rotate -45 \) \
    -gravity center -compose Src -composite rotate_cropped_image.png

答案 2 :(得分:0)

现在看来只是简单地工作" - 逆时针90度:

$ convert image.jpg -rotate -90 rotated_ccw.jpg

答案 3 :(得分:0)

如果您知道图像的大小,则可以进行以下操作:

转换-旋转45-重心-作物NxN输入输出

经过正方形图像测试。 可能有一种方法可以指定NxN为输入图像大小。