将Rails中的PDF与combine_pdf结合使用

问题描述 投票:1回答:2

我正在尝试使用gem combine_pdf以便在我的应用程序中组合大量PDF。它们位于assets/forms/packages/1.pdf 2.pdf 3.pdf

我正在尝试遵循gem的指南,但代码会产生错误:

@pdfForms = CombinePDF.new
@pdfForms << CombinePDF.new('assets/forms/packages/1.pdf')

我收到运行时错误:

root is unknown - cannot determine if file is Encrypted

非常感谢任何帮助,或合并pdfs的另一种方式。宝石pdf-merge由于其依赖rjb而失败了我的应用程序。

谢谢!

ruby-on-rails ruby pdf merge
2个回答
2
投票

尝试使用打开文件

File.open( “资产/表格/包/次数1.pdf”)

如果这不起作用,那么您的文件路径是错误的。如果此pdf文件位于应用程序的app / assets文件夹中,则可以使用以下命令访问它:

file_path = Rails.root.join("app", "assets", "forms", "packages","1.pdf")

File.open(file_path)

0
投票

尝试使用CombinePDF.load而不是CombinePDF.new

new将尝试加载文件并解析字符串 - 因此您不会看到文件加载异常。

可能是文件路径错误,CombinePDF正在尝试解析'assets / forms / packages / 1.pdf',就像它是PDF文件的内容一样。

您的代码应如下所示:

@pdfForms = CombinePDF.new
@pdfForms << CombinePDF.load('assets/forms/packages/1.pdf')
© www.soinside.com 2019 - 2024. All rights reserved.