module Statements::PdfReader

Public Class Methods

read(path) click to toggle source
# File lib/statements/pdf_reader.rb, line 7
def read(path)
  x = 0
  result = []
  loop do
    page = read_page(path, x += 1)
    break if page.chomp.empty?
    result << page
  end
  result
end

Private Class Methods

pdftotext_path() click to toggle source
# File lib/statements/pdf_reader.rb, line 24
def pdftotext_path
  unless @pdftotext_path
    @pdftotext_path = `which pdftotext`.chomp
    raise 'Could not find `pdftotext`. Please install Xpdf from http://www.foolabs.com/xpdf/download.html' if @pdftotext_path.empty?
  end
  @pdftotext_path
end
read_page(path, page) click to toggle source
# File lib/statements/pdf_reader.rb, line 20
def read_page(path, page)
  `#{pdftotext_path} -enc UTF-8 -table -q -f #{page} -l #{page} #{Shellwords.escape path} /dev/stdout`
end