rtesseract 0.0.7 → 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Rakefile CHANGED
@@ -5,7 +5,7 @@ begin
5
5
  require 'jeweler'
6
6
  Jeweler::Tasks.new do |gem|
7
7
  gem.name = "rtesseract"
8
- gem.version = '0.0.7'
8
+ gem.version = '0.0.8'
9
9
  gem.summary = "Ruby library for working with the Tesseract OCR."
10
10
  gem.description = "Ruby library for working with the Tesseract OCR."
11
11
  gem.email = "dannnylo@gmail.com"
@@ -0,0 +1,12 @@
1
+ require 'mini_magick'
2
+ module MiniMagickProcessor
3
+ def image_to_tiff
4
+ generate_uid
5
+ tmp_file = Pathname.new(Dir::tmpdir).join("#{@uid}_#{@source.basename}.tif").to_s
6
+ cat = MiniMagick::Image.open(@source.to_s)
7
+ cat.format("tif")
8
+ cat.crop("#{@w}x#{@h}+#{@x}+#{@y}") unless [@x, @y, @w, @h].compact == []
9
+ cat.write tmp_file.to_s
10
+ return tmp_file
11
+ end
12
+ end
@@ -0,0 +1,11 @@
1
+ require "RMagick"
2
+ module RMagickProcessor
3
+ def image_to_tiff
4
+ generate_uid
5
+ tmp_file = Pathname.new(Dir::tmpdir).join("#{@uid}_#{@source.basename}.tif").to_s
6
+ cat = Magick::Image.read(@source.to_s).first
7
+ cat.crop!(@x, @y, @w, @h) unless [@x, @y, @w, @h].compact == []
8
+ cat.write tmp_file.to_s
9
+ return tmp_file
10
+ end
11
+ end
data/lib/rtesseract.rb CHANGED
@@ -1,4 +1,3 @@
1
- require "RMagick"
2
1
  require "pathname"
3
2
  require "tempfile"
4
3
 
@@ -6,22 +5,25 @@ require "rtesseract/errors"
6
5
  require "rtesseract/mixed"
7
6
 
8
7
  class RTesseract
9
- VERSION = '0.0.7'
8
+ VERSION = '0.0.8'
10
9
  attr_accessor :options
11
10
  attr_writer :lang
12
11
  attr_writer :psm
12
+ attr_reader :processor
13
13
 
14
- def initialize(src="", options={})
15
- @uid = options.delete(:uid) || nil
14
+ def initialize(src = "", options = {})
15
+ @uid = options.delete(:uid) || nil
16
16
  @source = Pathname.new src
17
17
  @command = options.delete(:command) || "tesseract"
18
- @lang = options.delete(:lang) || options.delete("lang") || ""
19
- @psm = options.delete(:psm) || options.delete("psm") || nil
18
+ @lang = options.delete(:lang) || options.delete("lang") || ""
19
+ @psm = options.delete(:psm) || options.delete("psm") || nil
20
20
  @clear_console_output = options.delete(:clear_console_output)
21
21
  @clear_console_output = true if @clear_console_output.nil?
22
22
  @options = options
23
23
  @value = ""
24
- @x,@y,@w,@h = []
24
+ @x, @y, @w, @h = []
25
+ @processor = options.delete(:processor) || options.delete("processor")
26
+ choose_processor!
25
27
  end
26
28
 
27
29
  def source= src
@@ -33,15 +35,6 @@ class RTesseract
33
35
  @source.basename
34
36
  end
35
37
 
36
- #Convert image to tiff
37
- def image_to_tiff
38
- generate_uid
39
- tmp_file = Pathname.new(Dir::tmpdir).join("#{@uid}_#{@source.basename}.tif").to_s
40
- cat = Magick::Image.read(@source.to_s).first
41
- cat.crop!(@x, @y, @w, @h) unless [@x,@y,@w,@h].compact == []
42
- cat.write tmp_file.to_s
43
- return tmp_file
44
- end
45
38
 
46
39
  #Crop image to convert
47
40
  def crop!(x,y,width,height)
@@ -149,5 +142,16 @@ class RTesseract
149
142
  def to_s_without_spaces
150
143
  to_s.gsub(" ","").gsub("\n","").gsub("\r","")
151
144
  end
145
+
146
+ private
147
+ def choose_processor!
148
+ if @processor.to_s == "mini_magick"
149
+ require File.expand_path(File.dirname(__FILE__) + "/processors/mini_magick.rb")
150
+ self.class.send(:include, MiniMagickProcessor)
151
+ else
152
+ require File.expand_path(File.dirname(__FILE__) + "/processors/rmagick.rb")
153
+ self.class.send(:include, RMagickProcessor)
154
+ end
155
+ end
152
156
  end
153
157
 
data/rtesseract.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{rtesseract}
8
- s.version = "0.0.7"
8
+ s.version = "0.0.8"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Danilo Jeremias da Silva"]
12
- s.date = %q{2011-03-16}
11
+ s.authors = [%q{Danilo Jeremias da Silva}]
12
+ s.date = %q{2011-09-20}
13
13
  s.description = %q{Ruby library for working with the Tesseract OCR.}
14
14
  s.email = %q{dannnylo@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -21,6 +21,8 @@ Gem::Specification.new do |s|
21
21
  "LICENSE",
22
22
  "README.rdoc",
23
23
  "Rakefile",
24
+ "lib/processors/mini_magick.rb",
25
+ "lib/processors/rmagick.rb",
24
26
  "lib/rtesseract.rb",
25
27
  "lib/rtesseract/errors.rb",
26
28
  "lib/rtesseract/mixed.rb",
@@ -36,14 +38,9 @@ Gem::Specification.new do |s|
36
38
  "test/test_rtesseract.rb"
37
39
  ]
38
40
  s.homepage = %q{http://github.com/dannnylo/rtesseract}
39
- s.require_paths = ["lib"]
40
- s.rubygems_version = %q{1.4.2}
41
+ s.require_paths = [%q{lib}]
42
+ s.rubygems_version = %q{1.8.7}
41
43
  s.summary = %q{Ruby library for working with the Tesseract OCR.}
42
- s.test_files = [
43
- "test/helper.rb",
44
- "test/test_mixed.rb",
45
- "test/test_rtesseract.rb"
46
- ]
47
44
 
48
45
  if s.respond_to? :specification_version then
49
46
  s.specification_version = 3
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rtesseract
3
3
  version: !ruby/object:Gem::Version
4
- hash: 17
4
+ hash: 15
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 7
10
- version: 0.0.7
9
+ - 8
10
+ version: 0.0.8
11
11
  platform: ruby
12
12
  authors:
13
13
  - Danilo Jeremias da Silva
@@ -15,8 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-03-16 00:00:00 -03:00
19
- default_executable:
18
+ date: 2011-09-20 00:00:00 Z
20
19
  dependencies:
21
20
  - !ruby/object:Gem::Dependency
22
21
  name: jeweler
@@ -78,6 +77,8 @@ files:
78
77
  - LICENSE
79
78
  - README.rdoc
80
79
  - Rakefile
80
+ - lib/processors/mini_magick.rb
81
+ - lib/processors/rmagick.rb
81
82
  - lib/rtesseract.rb
82
83
  - lib/rtesseract/errors.rb
83
84
  - lib/rtesseract/mixed.rb
@@ -91,7 +92,6 @@ files:
91
92
  - test/images/test1.tif
92
93
  - test/test_mixed.rb
93
94
  - test/test_rtesseract.rb
94
- has_rdoc: true
95
95
  homepage: http://github.com/dannnylo/rtesseract
96
96
  licenses: []
97
97
 
@@ -121,11 +121,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
121
121
  requirements: []
122
122
 
123
123
  rubyforge_project:
124
- rubygems_version: 1.4.2
124
+ rubygems_version: 1.8.7
125
125
  signing_key:
126
126
  specification_version: 3
127
127
  summary: Ruby library for working with the Tesseract OCR.
128
- test_files:
129
- - test/helper.rb
130
- - test/test_mixed.rb
131
- - test/test_rtesseract.rb
128
+ test_files: []
129
+