class Tesseract::API::Iterator

Public Class Methods

new(pointer) click to toggle source
# File lib/tesseract/api/iterator.rb, line 28
def initialize (pointer)
        raise ArgumentError, 'the pointer is null' if pointer.nil? || pointer.null?

        @internal = FFI::AutoPointer.new(pointer, self.class.method(:finalize))
end

Public Instance Methods

baseline(level = :word) click to toggle source
# File lib/tesseract/api/iterator.rb, line 68
def baseline (level = :word)
        C::Iterator.baseline(to_ffi, C.for_enum(level))
end
begin() click to toggle source
# File lib/tesseract/api/iterator.rb, line 38
def begin
        C::Iterator.begin(to_ffi)
end
beginning?(level = :word) click to toggle source
# File lib/tesseract/api/iterator.rb, line 42
def beginning? (level = :word)
        C::Iterator.is_at_beginning_of(to_ffi, C.for_enum(level))
end
block_type() click to toggle source
# File lib/tesseract/api/iterator.rb, line 93
def block_type
        C::Iterator.block_type(to_ffi)
end
bounding_box(level = :word) click to toggle source
# File lib/tesseract/api/iterator.rb, line 54
def bounding_box (level = :word)
        C::Iterator.bounding_box(to_ffi, C.for_enum(level))
end
confidence(level = :word) click to toggle source
# File lib/tesseract/api/iterator.rb, line 89
def confidence (level = :word)
        C::Iterator.confidence(to_ffi, C.for_enum(level))
end
end?(level, element) click to toggle source
# File lib/tesseract/api/iterator.rb, line 46
def end? (level, element)
        C::Iterator.is_at_final_element(to_ffi, C.for_enum(level), C.for_enum(element))
end
get_binary_image(level = :word) click to toggle source
# File lib/tesseract/api/iterator.rb, line 58
def get_binary_image (level = :word)
        Image.new(C::Iterator.get_binary_image(to_ffi, C.for_enum(level)))
end
get_image(level = :word, padding = 0) click to toggle source
# File lib/tesseract/api/iterator.rb, line 62
def get_image (level = :word, padding = 0)
        image = C::Iterator.get_image(to_ffi, C.for_enum(level), padding)

        Image.new(image[:pix], image[:x], image[:y])
end
get_text(level = :word) click to toggle source
# File lib/tesseract/api/iterator.rb, line 76
def get_text (level = :word)
        pointer = C::Iterator.get_utf8_text(to_ffi, C.for_enum(level))
        
        return if pointer.null?

        result = pointer.read_string
        result.force_encoding 'UTF-8'

        result
ensure
        C.free_array_of_char(pointer) unless pointer.null?
end
next(level = :word) click to toggle source
# File lib/tesseract/api/iterator.rb, line 50
def next (level = :word)
        C::Iterator.next(to_ffi, C.for_enum(level))
end
orientation() click to toggle source
# File lib/tesseract/api/iterator.rb, line 72
def orientation
        C::Iterator.orientation(to_ffi)
end
symbol_is_dropcap?() click to toggle source
# File lib/tesseract/api/iterator.rb, line 117
def symbol_is_dropcap?
        C::Iterator.symbol_is_dropcap(to_ffi)
end
symbol_is_subscript?() click to toggle source
# File lib/tesseract/api/iterator.rb, line 113
def symbol_is_subscript?
        C::Iterator.symbol_is_subscript(to_ffi)
end
symbol_is_superscript?() click to toggle source
# File lib/tesseract/api/iterator.rb, line 109
def symbol_is_superscript?
        C::Iterator.symbol_is_superscript(to_ffi)
end
to_ffi() click to toggle source
# File lib/tesseract/api/iterator.rb, line 121
def to_ffi
        @internal
end
word_font_attributes() click to toggle source
# File lib/tesseract/api/iterator.rb, line 97
def word_font_attributes
        C::Iterator.word_font_attributes(to_ffi)
end
word_is_from_dictionary?() click to toggle source
# File lib/tesseract/api/iterator.rb, line 101
def word_is_from_dictionary?
        C::Iterator.word_is_from_dictionary(to_ffi)
end
word_is_numeric?() click to toggle source
# File lib/tesseract/api/iterator.rb, line 105
def word_is_numeric?
        C::Iterator.word_is_numeric(to_ffi)
end