class AmazonTRP::Document
Attributes
blocks[R]
pageBlocks[R]
pages[R]
Public Class Methods
new(responsePages)
click to toggle source
# File lib/amazon-textract-parser-ruby.rb, line 536 def initialize(responsePages) @responsePages = responsePages.is_a?(Array) ? responsePages : [responsePages] @pages = [] _parse() end
Public Instance Methods
_parse()
click to toggle source
# File lib/amazon-textract-parser-ruby.rb, line 576 def _parse @responseDocumentPages, @blockMap = _parseDocumentPagesAndBlockMap() @responseDocumentPages.each do |documentPage| page = Page.new(documentPage[:blocks], @blockMap) @pages.append(page) end end
_parseDocumentPagesAndBlockMap()
click to toggle source
# File lib/amazon-textract-parser-ruby.rb, line 550 def _parseDocumentPagesAndBlockMap blockMap = {} documentPages = [] documentPage = nil @responsePages.each do |page| unless page[:blocks].nil? page[:blocks].each do |block| if block.has_key?(:block_type) && block.has_key?(:id) blockMap[block[:id]] = block end if block[:block_type] == 'PAGE' documentPages.append({:blocks => documentPage}) if documentPage documentPage = [] documentPage.append(block) else documentPage.append(block) end end end end documentPages.append({:blocks => documentPage}) if documentPage return documentPages, blockMap end
getBlockById(blockId)
click to toggle source
# File lib/amazon-textract-parser-ruby.rb, line 584 def getBlockById(blockId) return @blockMap[blockId] if @blockMap && @blockMap.has_key?(blockId) return nil end
to_s()
click to toggle source
# File lib/amazon-textract-parser-ruby.rb, line 542 def to_s s = "\nDocument:\n" @pages.each do |p| s = s + p.to_s + "\n\n" end return s end