class Nguyen::Pdf

Attributes

path[R]

Public Class Methods

new(path, pdftk) click to toggle source
# File lib/nguyen/pdf.rb, line 5
def initialize(path, pdftk)
  @path = path
  raise IOError unless File.readable?(path)
  @pdftk = pdftk
end

Public Instance Methods

fields() click to toggle source
# File lib/nguyen/pdf.rb, line 11
def fields
  @fields ||= read_fields
end

Protected Instance Methods

read_fields() click to toggle source
# File lib/nguyen/pdf.rb, line 17
def read_fields
  field_output = @pdftk.call_pdftk %Q("#{path}"), 'dump_data_fields'
  @fields = field_output.split(/^---\n/).map do |field_text|
    if field_text =~ /^FieldName: (\w+)$/
      $1
    end
  end.compact.uniq
end