我想我错过了一些简单的事情。使用combine_pdf:我正在尝试将两个pdf文件合并为一个pdf,然后在我的rails应用程序中将结果pdf与send_data
一起发送。
这是我在控制器中的代码:
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文件:
Adobe Acrobat Reader无法打开“VR_Voc_Eval-51.pdf”,因为它不是受支持的文件类型,或者因为文件已损坏(例如,它是作为电子邮件附件发送而未正确解码)
我错过了什么?如何使用此gem将两个现有的pdf文件合并为一个pdf,然后将其发送给用户?
答案 0 :(得分:2)
看起来该库的README在发送数据时调用.to_pdf。希望在示例中调用pdf对象上的#to_pdf将解决您的问题。
send_data pdf.to_pdf, filename: “my_combined_pdf”, type: "application/pdf"