Module: Pdfrb::CLI::Split

Defined in:
lib/pdfrb/cli/split.rb

Class Method Summary collapse

Class Method Details

.call(path, output_dir: nil) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
# File 'lib/pdfrb/cli/split.rb', line 8

def call(path, output_dir: nil)
  doc = Pdfrb::Document.open(path)
  output_dir ||= File.dirname(path)
  basename = File.basename(path, ".pdf")
  doc.pages.each_with_index do |page, i|
    single = Pdfrb::Document.new
    single.pages.add(media_box: page.media_box)
    single.write(File.join(output_dir, "#{basename}_#{i + 1}.pdf"))
  end
  true
end