I just got a very large PDF. I want to break it into smaller PDFs -- but not thousands and thousands of them. Would you be open to a pull request that added this feature to the pages command? Something like
$docsplit pages big.pdf --pages 1-1000 --numoutput 1 #breaks the first 1000 pages into a single file
page_extractor.rb
# Burst a list of pdfs into single pages, as `pdfname_pagenumber.pdf`.
def extract(pdfs, opts)
extract_options opts
[pdfs].flatten.each do |pdf|
pdf_name = File.basename(pdf, File.extname(pdf))
page_path = ESCAPE[File.join(@output, "#{pdf_name}")] + "_%d.pdf"
FileUtils.mkdir_p @output unless File.exists?(@output)
cmd = if DEPENDENCIES[:pdftailor] # prefer pdftailor, but keep pdftk for backwards compatability
"pdftailor unstitch --output #{page_path} #{ESCAPE[pdf]} 2>&1"
else
"pdftk #{ESCAPE[pdf]} burst output #{page_path} 2>&1"
end
result = `#{cmd}`.chomp
FileUtils.rm('doc_data.txt') if File.exists?('doc_data.txt')
raise ExtractionFailed, result if $? != 0
result
end
end
I just got a very large PDF. I want to break it into smaller PDFs -- but not thousands and thousands of them. Would you be open to a pull request that added this feature to the pages command? Something like
$docsplit pages big.pdf --pages 1-1000 --numoutput 1 #breaks the first 1000 pages into a single file
page_extractor.rb