首页 > 解决方案 > 如何使用 Prawn Gem 压缩用户在 Rails 中上传的 pdf

问题描述

我是 Rails 和编程方面的新手。我正在尝试使用 Prawn gem 压缩 pdf,但我不确定它是否是正确的 gem,或者是否有其他工具。用户可以上传 pdf,但在保存之前,我想压缩。我现在正在使用 Active Storage 并尝试以下操作但无法正常工作

elsif @test.tipo == 'pdf'
      pdf = params[:test][:book]
      mini_pdf = Prawn::Document.new(pdf.tempfile, :compress => true)

我所做的就是安装 gem。没有其他的。

标签: ruby-on-railsrubypdfprawn

解决方案


Prawn 只是一个用于创建 PDF 的库,而不是用于操作它们。

如果您想压缩 PDF,请查看HexaPDF,它是一个功能齐全的 PDF 库,可以压缩 PDF 文件(参见示例压缩基准)。

注意事项:我是 HexaPDF 的作者,HexaPDF 是 AGPL 许可的,具有商业许可。它可能是目前处理 PDF 的最佳纯 Ruby 解决方案。


推荐阅读