lib/documenter/pdf.rb in documenter-0.0.1 vs lib/documenter/pdf.rb in documenter-0.0.3
- old
+ new
@@ -1,16 +1,24 @@
+require 'ftools'
+
+
class Pdf
+ # pass to localy installed pdftk
+ @@exe = File.dirname(__FILE__)+'/pdftk/pdftk.exe'
- def self.is_windows?
- processor, platform, *rest = RUBY_PLATFORM.split("-")
- platform == 'mswin32'
+ #join array of pdfs filenames to one output file
+ def self.cat pdfs, output
+ system("#{@@exe} #{pdfs*' '} cat output #{output} compress dont_ask ")
end
-
- def self.join array_of_pdfs, output, extras = 'compress'
- if is_windows?
- system("pdftk/pdftk.exe #{array_of_pdfs*' '} cat output #{output} #{extras} dont_ask ")
- else
- raise "Currently only windows supported"
+ #cut file to single pages
+ def self.burst file, pattern
+ system("#{@@exe} #{file} burst")
+ Dir.new(".").each do |file|
+ if (file =~ /pg_[0-9]*\.pdf/)
+ number = file.match(/[0-9]{4}/)[0].to_i
+ new_file = pattern % number
+ File.move file, new_file
+ end
end
end
-end
+end
\ No newline at end of file