class NdrImport::File::Pdf
This class is a PDF file handler that returns a single table.
Private Instance Methods
process_page(page, &block)
click to toggle source
# File lib/ndr_import/file/pdf.rb, line 26 def process_page(page, &block) page.text.split("\n").each do |line| block.call(line) end rescue => e raise "Invalid format on page #{page.number} of #{SafeFile.basename(@filename)} " \ "[#{e.class}: #{e.message}]" end
rows(&block)
click to toggle source
# File lib/ndr_import/file/pdf.rb, line 13 def rows(&block) return enum_for(:rows) unless block reader = PDF::Reader.new(SafeFile.safepath_to_string(@filename)) reader.pages.each do |page| process_page(page, &block) end rescue NoMethodError raise "Failed to read #{SafeFile.basename(@filename)} as a PDF" end