MiniMagick(+ Rails):如何显示图像中的场景数量

时间:2012-07-08 16:05:28

标签: ruby-on-rails ruby imagemagick minimagick

我有一个Rails应用程序上传图像进行图像处理,我希望能够1)查看图像中有多少页/帧/场景,以及2)将多页图像分割成单页JPEG文件。

我在转换单场景图像的图像类型方面没有遇到任何问题,但我无法完全理解ImageMagick文档以了解我要做什么。我正在使用的doc页面在这里:

http://www.imagemagick.org/www/escape.html

在大多数情况下,我希望代码像

一样简单
def multiPage?( image )
  img = MiniMagick::Image.open(image.path)
  numPages = img.format("%n") #This returns Nil
  count > 1 ? true : false
end

有没有人比我更了解做什么?提前谢谢!

1 个答案:

答案 0 :(得分:0)

好吧,这有点像黑客,但当我这样做时:

numPages = img[:n]

我会得到numPages,导致字母'n'的字符串与图像中的页面一样多,所以:

#img -> 4-page image
numPages = img[:n] # => 'nnnn'

可能不是最佳答案,但至少它可行。

更新: 找到了更好的方法

numPages = Integer(img["%n"])