如何使用ruby将多个图像组合成单个PDF?
我有一组图像。如何将它们合并成PDF格式,每页一张图片 我已经看过RGhost和RMagic,答案可能就在那里的某个地方,但我现在想不起来了。看看gem。简单示例如下:如何使用ruby将多个图像组合成单个PDF?,ruby,pdf,pdf-generation,rmagick,Ruby,Pdf,Pdf Generation,Rmagick,我有一组图像。如何将它们合并成PDF格式,每页一张图片 我已经看过RGhost和RMagic,答案可能就在那里的某个地方,但我现在想不起来了。看看gem。简单示例如下: require 'prawn' Prawn::Document.generate('hello.pdf') do |pdf| pdf.text("Hello Prawn!") pdf.image "#{Prawn::DATADIR}/images/fractal.jpg", :at => [200, 100]
require 'prawn'
Prawn::Document.generate('hello.pdf') do |pdf|
pdf.text("Hello Prawn!")
pdf.image "#{Prawn::DATADIR}/images/fractal.jpg", :at => [200, 100]
end
您可以使用RMagick的:
如果文件名指示的图像格式支持每个文件有多个图像(动画图像),write会将imagelist中的所有图像写入单个文件
例如:
require 'rmagick'
image_list = Magick::ImageList.new("image1.png", "image2.png", "image3.png")
image_list.write("images.pdf")
看看
prawn
Gem,它看起来不错,Stefan。只是一个简单的问题。如果我有一组图像,我如何传递它们?数组转换为Magick::ImageList.new(['image1.png','image2.png']),但不起作用。如果我转换成字符串,我会得到Magick::ImageList.new(“'image1.png','image2.png'),它也不起作用。我可能忽略了一个明显的技巧。我使用的是Magick::ImageList.new([“image1.png”,“image2.png]”)
@MinhDanh你必须传递文件名,而不是数组,例如Magick::ImageList.new('image1.png”,“image2.png')
哦,我以为你提到的是数组byMagick::ImageList.new(*array)
@MinhDanh这也行。*
将数组转换为参数列表。在您的情况下:Magick::ImageList.new(*['image1.png','image2.png'])
(注意数组前面的*
)