2017-06-22 80 views
1

我想我缺少一些简单的东西。使用combine_pdf:我试图将两个pdf文件合并成一个pdf文件,然后在我的rails应用程序中发送带有send_data的PDF。combine_pdf不结合pdfs

这是我在控制器代码:

pdf = CombinePDF.new 

# returns an array, each element is a string of an absolute path 
# to the file I want to upload 
absolute_upload_paths = @obj.attachments.collect {|obj| obj.my_attachment.path} 

absolute_upload_paths.each {|upload_path| pdf << CombinePDF.load(upload_path)} 

send_data pdf, filename: “my_combined_pdf”, type: "application/pdf" 

什么结果是,损坏的PDF文件被发送不能打开:

Adob​​e Acrobat Reader软件无法打开“VR_Voc_Eval-51 .pdf',因为它不是支持的文件类型,或者是因为文件已损坏(例如,它是作为电子邮件附件发送的,未正确解码)。

我错过了什么?我如何使用这个gem将两个现有的pdf文件合并成一个pdf文件然后发送给用户?

+0

当一个较大的积分没有工作,那么最好是打破问题成小块。你可以使用硬编码的文件路径从rails或ruby控制台合并PDF文件吗?一旦工作,你就可以开始验证你的模型的合并文件并从rails中返回文件。 – Puhlze

回答