Hir*_*103 5 ruby pdf pdf-generation rspec
我正在使用prawnpdf/pdf-inspector来测试 Rails 应用程序中生成的 PDF 内容是否正确。
我想检查 PDF 文件是否包含具有特定 URL 的链接。我查看了yob/pdf-reader但没有找到与此主题相关的任何有用信息
是否可以使用 Ruby/RSpec 测试 PDF 中的 URL?
我想要以下内容:
expect(urls_in_pdf(pdf)).to include 'https://example.com/users/1'
Run Code Online (Sandbox Code Playgroud)
由于pdf-inspector似乎只返回文本,您可以尝试直接使用pdf 阅读器pdf-inspector(无论如何都使用它)。
reader = PDF::Reader.new("somefile.pdf")
reader.pages.each do |page|
puts page.raw_content # This should also give you the link
end
Run Code Online (Sandbox Code Playgroud)
不管怎样,我只是快速浏览了一下 github 页面。我不确定raw_content到底返回什么。但还有一个低级方法可以直接访问 pdf 的对象:
reader = PDF::Reader.new("somefile.pdf")
puts reader.objects.inspect
Run Code Online (Sandbox Code Playgroud)
这样肯定就可以得到url了。