class RTesseract::Command
Constants
- FIXED
Attributes
Public Class Methods
Source
# File lib/rtesseract/command.rb, line 9 def initialize(source, output_path, errors, options) @source = source @output_path = output_path @options = options @errors = errors @full_command = [options.command, @source, @output_path] end
Public Instance Methods
Source
# File lib/rtesseract/command.rb, line 32 def add_option(*args) return unless args.last @full_command << args.map(&:to_s) end
Source
# File lib/rtesseract/command.rb, line 17 def full_command add_option('--psm', options.psm) add_option('--oem', options.oem) add_option('-l', options.lang) add_option('--tessdata-dir', options.tessdata_dir) add_option('--user-words', options.user_words) add_option('--user-patterns', options.user_patterns) other_configs add_option(options.config_file) @full_command end
Source
# File lib/rtesseract/command.rb, line 38 def other_configs @options.to_h.map do |key, value| next if FIXED.include?(key) add_option('-c', "#{key}=#{value}") end end
Source
# File lib/rtesseract/command.rb, line 46 def run output, error, status = Open3.capture3(*full_command.flatten) @errors.push(error) if status.success? return yield(@output_path) if block_given? return output end raise RTesseract::Error, error end