将.doc或者.pdf转换为图像并在Ruby中显示缩略图?

时间:2020-03-05 18:54:09  来源:igfitidea点击:

将.doc或者.pdf转换为图像并在Ruby中显示缩略图?
有谁知道如何在Ruby(或者C,python ...)中生成文档缩略图

解决方案

回答

不确定任何开源库中的.doc支持,但ImageMagick(和RMagick gem)可以使用pdf支持进行编译(我认为默认情况下处于启用状态)

回答

在ImageMagick中,对PDF的支持有些小问题,但这是目前红宝石最好的操作系统方式。还有一个Google Summer of Code项目,用于纯Ruby PDF支持。

我已经读过有关在没有GUI的情况下使用OpenOffice来转换.doc文件的内容,但充其量只会很复杂。

回答

如前两张海报所述,ImageMagick可能是生成缩略图的最简单方法。

我们可以执行以下命令:

′convert -size 300x300 doc.pdf doc.png′

(反引号告诉Ruby将其去壳)。

如果我们不想使用exec进行转换,则可以使用RMagick gem为我们完成转换,但是可能需要更多代码。

回答

将PDF转换为PNG的简单RMagick示例为:

require 'RMagick'
pdf = Magick::ImageList.new("doc.pdf")
thumb = pdf.scale(300, 300)
thumb.write "doc.png"

要转换MS Word文档,它不会那么容易。最好的选择是在生成缩略图之前先将其转换为PDF。生成PDF的选项在很大程度上取决于我们所运行的操作系统。一种可能是使用OpenOffice和Python Open Document Converter。我们还可以尝试在线转换服务,包括http://Zamzar.com。