【问题标题】:Ruby - using pdftk to split a multi page pdf into many single page pdf's?Ruby - 使用 pdftk 将多页 pdf 拆分为多个单页 pdf?
【发布时间】:2023-03-11 22:36:01
【问题描述】:

我尝试使用名为 docsplit 的 gem,但得到的只是错误;即使在尝试文档示例时,它们也无法在我的 Windows 机器上运行。

我遇到了一篇博客文章,让我希望这可以在 pdftk 中完成: here

我有一个名为multi_page.pdf的pdf

我需要将multi_page.pdf 拆分成许多 单页 PDF,并在名为destination的子目录中输出许多单页PDF

这就是我所在的地方,它肯定不起作用

source_path = 'C:\Users\ALilland\Documents\split_test\one_page\destination'
source_file = 'C:\Users\ALilland\Documents\split_test\one_page\multi_page.pdf'
FileUtils.cd(source_path)
`pdftk #{source_file} burst output page_%02d.pdf`

【问题讨论】:

  • 在 Ubuntu 上试过你的代码,它工作正常。如果存在任何错误,请传递您遇到的错误
  • 我刚刚开始工作 %x(pdftk C:\\Users\\ALilland\\Documents\\split_test\\one_page\\multi_page.pdf burst)

标签: ruby pdf pdftk


【解决方案1】:

您可以使用combine_pdf gem 进行尝试:

require 'combine_pdf'

pages = CombinePDF.load("my_pdf.pdf").pages;
i = 0
pages.each do |page|
   pdf = CombinePDF.new
   pdf << page
   pdf.save("#{i}.pdf")
   i+=1
end

combine_pdf gem(我是作者)是原生 Ruby 解决方案,所以您不必担心pdftk 的安装和要求。

【讨论】:

  • 比pdftk干净多了,谢谢你写!
  • this vs Ruby Vips 的表现如何? github.com/libvips/ruby-vips 拆分100页pdf没问题吗?我遇到了 ImageMagick 性能拆分 PDF 的问题。
  • @fatfrog - 我不知道。如果您可以对其进行测试并发布有关它的内容,那就太好了??
【解决方案2】:

另一种解决方案是使用hexapdf

$ gem install hexapdf
$ hexapdf modify -i 1-10 input.pdf output.pdf

其中1-10 是根据他们的docs 的页面规范。它说“第 1-10 页”将在输出 PDF 中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-11-28
    • 1970-01-01
    • 2010-10-04
    • 1970-01-01
    • 1970-01-01
    • 2012-09-26
    • 2017-10-21
    • 2022-12-19
    相关资源
    最近更新 更多