ruby-zint 1.1.0 → 1.3.0
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.
- checksums.yaml +4 -4
- data/.yardopts +9 -0
- data/README.md +13 -5
- data/ext/ruby-zint/extconf.rb +2 -2
- data/lib/zint/aus_post.rb +3 -2
- data/lib/zint/aus_redirect.rb +3 -2
- data/lib/zint/aus_reply.rb +3 -2
- data/lib/zint/aus_route.rb +3 -2
- data/lib/zint/azrune.rb +3 -2
- data/lib/zint/aztec.rb +3 -2
- data/lib/zint/barcode.rb +109 -105
- data/lib/zint/bc_412.rb +8 -0
- data/lib/zint/c25iata.rb +3 -2
- data/lib/zint/c25ind.rb +3 -2
- data/lib/zint/c25inter.rb +3 -2
- data/lib/zint/c25logic.rb +3 -2
- data/lib/zint/c25matrix.rb +3 -2
- data/lib/zint/c25standard.rb +3 -2
- data/lib/zint/cep_net.rb +8 -0
- data/lib/zint/channel.rb +3 -2
- data/lib/zint/codabar.rb +3 -2
- data/lib/zint/codablock_f.rb +3 -2
- data/lib/zint/code11.rb +3 -2
- data/lib/zint/code128.rb +3 -2
- data/lib/zint/code128ab.rb +8 -0
- data/lib/zint/code128b.rb +2 -4
- data/lib/zint/code16k.rb +3 -2
- data/lib/zint/code32.rb +3 -2
- data/lib/zint/code39.rb +3 -2
- data/lib/zint/code49.rb +3 -2
- data/lib/zint/code93.rb +3 -2
- data/lib/zint/code_one.rb +3 -2
- data/lib/zint/constants/capability_flags.rb +14 -11
- data/lib/zint/constants/input_data_types.rb +8 -7
- data/lib/zint/constants/output_options.rb +14 -11
- data/lib/zint/constants/symbologies.rb +13 -6
- data/lib/zint/constants/warn_levels.rb +1 -1
- data/lib/zint/daft.rb +3 -2
- data/lib/zint/data_matrix.rb +4 -3
- data/lib/zint/dbarexp.rb +3 -2
- data/lib/zint/dbarexpstk.rb +3 -2
- data/lib/zint/dbarltd.rb +3 -2
- data/lib/zint/dbaromn.rb +3 -2
- data/lib/zint/dbaromnstk.rb +3 -2
- data/lib/zint/dbarstk.rb +3 -2
- data/lib/zint/dependencies.rb +2 -3
- data/lib/zint/dot_code.rb +3 -2
- data/lib/zint/dpd.rb +3 -2
- data/lib/zint/dpident.rb +3 -2
- data/lib/zint/dpleit.rb +3 -2
- data/lib/zint/ean128.rb +3 -2
- data/lib/zint/ean14.rb +3 -2
- data/lib/zint/eanx.rb +3 -2
- data/lib/zint/eanxchk.rb +3 -2
- data/lib/zint/excode39.rb +3 -2
- data/lib/zint/fim.rb +3 -2
- data/lib/zint/flat.rb +3 -2
- data/lib/zint/grid_matrix.rb +3 -2
- data/lib/zint/gs1_128.rb +3 -2
- data/lib/zint/hanxin.rb +3 -2
- data/lib/zint/hibc128.rb +3 -2
- data/lib/zint/hibc39.rb +3 -2
- data/lib/zint/hibcaztec.rb +3 -2
- data/lib/zint/hibcblockf.rb +3 -2
- data/lib/zint/hibcdm.rb +3 -2
- data/lib/zint/hibcmicpdf.rb +3 -2
- data/lib/zint/hibcpdf.rb +3 -2
- data/lib/zint/hibcqr.rb +3 -2
- data/lib/zint/isbnx.rb +3 -2
- data/lib/zint/itf14.rb +3 -2
- data/lib/zint/japan_post.rb +3 -2
- data/lib/zint/kix.rb +3 -2
- data/lib/zint/korea_post.rb +3 -2
- data/lib/zint/logmars.rb +3 -2
- data/lib/zint/mailmark.rb +3 -2
- data/lib/zint/mailmark_2d.rb +8 -0
- data/lib/zint/mailmark_4s.rb +8 -0
- data/lib/zint/maxi_code.rb +3 -2
- data/lib/zint/micro_pdf417.rb +3 -2
- data/lib/zint/micro_qr.rb +3 -2
- data/lib/zint/msiplessey.rb +3 -2
- data/lib/zint/native.rb +1 -1
- data/lib/zint/nve18.rb +3 -2
- data/lib/zint/one_code.rb +3 -2
- data/lib/zint/pdf417.rb +3 -2
- data/lib/zint/pdf417comp.rb +3 -2
- data/lib/zint/pdf417trunc.rb +3 -2
- data/lib/zint/pharma.rb +3 -2
- data/lib/zint/pharmatwo.rb +3 -2
- data/lib/zint/planet.rb +3 -2
- data/lib/zint/plessey.rb +3 -2
- data/lib/zint/postnet.rb +3 -2
- data/lib/zint/pzn.rb +3 -2
- data/lib/zint/qr.rb +3 -2
- data/lib/zint/rmqr.rb +3 -2
- data/lib/zint/rss14.rb +3 -2
- data/lib/zint/rss14stack.rb +3 -2
- data/lib/zint/rss14stackomni.rb +3 -2
- data/lib/zint/rssexp.rb +3 -2
- data/lib/zint/rssexpstack.rb +3 -2
- data/lib/zint/rssltd.rb +3 -2
- data/lib/zint/structs/structapp.rb +25 -0
- data/lib/zint/structs/symbol.rb +38 -35
- data/lib/zint/structs/vector_circle.rb +3 -2
- data/lib/zint/telepen.rb +3 -2
- data/lib/zint/telepennum.rb +3 -2
- data/lib/zint/ultra.rb +3 -2
- data/lib/zint/upc_a.rb +3 -2
- data/lib/zint/upc_a_chk.rb +3 -2
- data/lib/zint/upc_e.rb +3 -2
- data/lib/zint/upc_e_chk.rb +3 -2
- data/lib/zint/upnqr.rb +3 -2
- data/lib/zint/upu_s10.rb +8 -0
- data/lib/zint/uspsimail.rb +3 -2
- data/lib/zint/version.rb +1 -1
- data/lib/zint/vin.rb +3 -2
- data/lib/zint.rb +8 -1
- data/ports/archives/zint-2.12.0-src.tar.gz +0 -0
- metadata +128 -10
- data/lib/zint/bind.rb +0 -7
- data/lib/zint/box.rb +0 -7
- data/lib/zint/dotty_mode.rb +0 -7
- data/lib/zint/noascii.rb +0 -7
- data/lib/zint/stdout.rb +0 -7
- data/ports/archives/zint-2.10.0-src.tar.gz +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 486ea5eb1e9c5382337612a19ce2101cbbcba980dc30b9d1ff702f2dbc4beba9
|
|
4
|
+
data.tar.gz: 0be779d097b3e9f99d7c79d4f8da8895c2e8931ea6be84165f77d40bc9f0a5a8
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: a33d8244d461e0dac91b66f086aa153d26ed188ae418fa3b1ba1d03139e424d678b2ef92a988f8db7c23d6e46627912e2f04a753c66e77b7c5b1b51e9383f3e5
|
|
7
|
+
data.tar.gz: c97890ca409f5393478f14b4630147229c8e4f282b640a51ff781d98fc8f4c31f42eaed3167d9e16d6b2dc021884af14fd92a75234f573bcbb46562db62d326d
|
data/.yardopts
ADDED
data/README.md
CHANGED
|
@@ -27,7 +27,7 @@ Install the libzint binary with your package manager (e. g. `apt install zint` o
|
|
|
27
27
|
|
|
28
28
|
Other platforms require building [from source](https://www.zint.org.uk/manual/chapter/2).
|
|
29
29
|
|
|
30
|
-
**NOTE:** It is assumed that you are using libzint with the version [2.
|
|
30
|
+
**NOTE:** It is assumed that you are using libzint with the version [2.12](https://sourceforge.net/projects/zint/files/zint/2.12.0/).
|
|
31
31
|
|
|
32
32
|
Then install this gem and enforce system libzint:
|
|
33
33
|
|
|
@@ -49,7 +49,7 @@ bundle config build.ruby-zint --enable-system-libzint
|
|
|
49
49
|
```ruby
|
|
50
50
|
require "zint"
|
|
51
51
|
|
|
52
|
-
barcode = Zint::Barcode.new(value: "Test",
|
|
52
|
+
barcode = Zint::Barcode.new(value: "Test", symbology: Zint::BARCODE_CODE128)
|
|
53
53
|
|
|
54
54
|
# Export to file
|
|
55
55
|
barcode.to_file(path: "out.png")
|
|
@@ -71,8 +71,16 @@ end
|
|
|
71
71
|
png.save("out.png")
|
|
72
72
|
|
|
73
73
|
# Use vector export
|
|
74
|
-
|
|
75
|
-
|
|
74
|
+
vec = Zint::Qr.new(value: "Test").to_vector
|
|
75
|
+
png = ChunkyPNG::Image.new(vec.width.to_i, vec.height.to_i, ChunkyPNG::Color::WHITE)
|
|
76
|
+
vec.each_rectangle do |rec|
|
|
77
|
+
png.rect(rec.x.to_i, rec.y.to_i,
|
|
78
|
+
rec.x.to_i+rec.width.to_i-1, rec.y.to_i+rec.height.to_i-1,
|
|
79
|
+
ChunkyPNG::Color::BLACK, ChunkyPNG::Color::BLACK)
|
|
80
|
+
end
|
|
81
|
+
png.save("out.png")
|
|
82
|
+
|
|
83
|
+
# See also manual: https://zint.org.uk/manual/chapter/5#buffering-symbols-in-memory-vector
|
|
76
84
|
|
|
77
85
|
# Use file as input
|
|
78
86
|
barcode = Zint::Barcode.new(input_file: "/tmp/test.txt")
|
|
@@ -99,4 +107,4 @@ Bug reports and pull requests are welcome on GitHub at https://github.com/api-wa
|
|
|
99
107
|
The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
|
|
100
108
|
|
|
101
109
|
## Credits
|
|
102
|
-
The project is based on the work and ideas of Angel Pizarro's [zint](https://github.com/delagoya/zint).
|
|
110
|
+
The project is based on the work and ideas of Angel Pizarro's [zint](https://github.com/delagoya/zint). I would also like to say a big thank you to [Lars Kanis](https://github.com/larskanis) for his great contributions.
|
data/ext/ruby-zint/extconf.rb
CHANGED
|
@@ -45,11 +45,11 @@ def libzint_usable?
|
|
|
45
45
|
m = Module.new do
|
|
46
46
|
extend FFI::Library
|
|
47
47
|
|
|
48
|
-
ffi_lib(%w[libzint.so.2.
|
|
48
|
+
ffi_lib(%w[libzint.so.2.12 libzint zint])
|
|
49
49
|
attach_function(:ZBarcode_Version, [], :int32)
|
|
50
50
|
end
|
|
51
51
|
|
|
52
|
-
(
|
|
52
|
+
(21200...21300) === m.ZBarcode_Version
|
|
53
53
|
rescue LoadError
|
|
54
54
|
false
|
|
55
55
|
end
|
data/lib/zint/aus_post.rb
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
module Zint
|
|
2
|
+
# Australia Post 4-State Barcode
|
|
2
3
|
class AusPost < Barcode
|
|
3
|
-
def initialize(value: nil, input_file: nil,
|
|
4
|
-
super(value: value, input_file: input_file,
|
|
4
|
+
def initialize(value: nil, input_file: nil, **kwargs)
|
|
5
|
+
super(value: value, input_file: input_file, symbology: Zint::BARCODE_AUSPOST, **kwargs)
|
|
5
6
|
end
|
|
6
7
|
end
|
|
7
8
|
end
|
data/lib/zint/aus_redirect.rb
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
module Zint
|
|
2
|
+
# Australia Post Redirection
|
|
2
3
|
class AusRedirect < Barcode
|
|
3
|
-
def initialize(value: nil, input_file: nil,
|
|
4
|
-
super(value: value, input_file: input_file,
|
|
4
|
+
def initialize(value: nil, input_file: nil, **kwargs)
|
|
5
|
+
super(value: value, input_file: input_file, symbology: Zint::BARCODE_AUSREDIRECT, **kwargs)
|
|
5
6
|
end
|
|
6
7
|
end
|
|
7
8
|
end
|
data/lib/zint/aus_reply.rb
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
module Zint
|
|
2
|
+
# Australia Post Reply Paid
|
|
2
3
|
class AusReply < Barcode
|
|
3
|
-
def initialize(value: nil, input_file: nil,
|
|
4
|
-
super(value: value, input_file: input_file,
|
|
4
|
+
def initialize(value: nil, input_file: nil, **kwargs)
|
|
5
|
+
super(value: value, input_file: input_file, symbology: Zint::BARCODE_AUSREPLY, **kwargs)
|
|
5
6
|
end
|
|
6
7
|
end
|
|
7
8
|
end
|
data/lib/zint/aus_route.rb
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
module Zint
|
|
2
|
+
# Australia Post Routing
|
|
2
3
|
class AusRoute < Barcode
|
|
3
|
-
def initialize(value: nil, input_file: nil,
|
|
4
|
-
super(value: value, input_file: input_file,
|
|
4
|
+
def initialize(value: nil, input_file: nil, **kwargs)
|
|
5
|
+
super(value: value, input_file: input_file, symbology: Zint::BARCODE_AUSROUTE, **kwargs)
|
|
5
6
|
end
|
|
6
7
|
end
|
|
7
8
|
end
|
data/lib/zint/azrune.rb
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
module Zint
|
|
2
|
+
# Aztec Runes
|
|
2
3
|
class Azrune < Barcode
|
|
3
|
-
def initialize(value: nil, input_file: nil,
|
|
4
|
-
super(value: value, input_file: input_file,
|
|
4
|
+
def initialize(value: nil, input_file: nil, **kwargs)
|
|
5
|
+
super(value: value, input_file: input_file, symbology: Zint::BARCODE_AZRUNE, **kwargs)
|
|
5
6
|
end
|
|
6
7
|
end
|
|
7
8
|
end
|
data/lib/zint/aztec.rb
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
module Zint
|
|
2
|
+
# Aztec Code
|
|
2
3
|
class Aztec < Barcode
|
|
3
|
-
def initialize(value: nil, input_file: nil,
|
|
4
|
-
super(value: value, input_file: input_file,
|
|
4
|
+
def initialize(value: nil, input_file: nil, **kwargs)
|
|
5
|
+
super(value: value, input_file: input_file, symbology: Zint::BARCODE_AZTEC, **kwargs)
|
|
5
6
|
end
|
|
6
7
|
end
|
|
7
8
|
end
|
data/lib/zint/barcode.rb
CHANGED
|
@@ -2,11 +2,13 @@ module Zint
|
|
|
2
2
|
# Base class to represent the barcode
|
|
3
3
|
#
|
|
4
4
|
# @example Create new barcode
|
|
5
|
-
# barcode = Zint::Barcode.new(value: "Test",
|
|
5
|
+
# barcode = Zint::Barcode.new(value: "Test", symbology: Zint::BARCODE_QRCODE, option_1: 1)
|
|
6
6
|
# barcode.to_file(path: "qr.png")
|
|
7
7
|
class Barcode
|
|
8
8
|
include Native
|
|
9
9
|
|
|
10
|
+
class AlreadyGenerated < Error; end
|
|
11
|
+
|
|
10
12
|
# @return [String, NilClass] Content of the barcode
|
|
11
13
|
attr_accessor :value
|
|
12
14
|
# @return [String, NilClass] Path to input file with content of the barcode
|
|
@@ -14,15 +16,16 @@ module Zint
|
|
|
14
16
|
|
|
15
17
|
# @param value [String, NilClass] Content of the barcode
|
|
16
18
|
# @param input_file [String, NilClass] Path to input file with content of the barcode
|
|
17
|
-
# @param
|
|
18
|
-
# @param
|
|
19
|
-
def initialize(value: nil, input_file: nil,
|
|
19
|
+
# @param symbology [Integer] Type of barcode
|
|
20
|
+
# @param kwargs [Hash] Specific options for zint symbol (height, scale, ...)
|
|
21
|
+
def initialize(value: nil, input_file: nil, symbology: Zint::BARCODE_CODE128, **kwargs)
|
|
20
22
|
raise ArgumentError, "value or input_file must be given!" if value&.empty? && input_file&.empty?
|
|
21
23
|
raise ArgumentError, "input_file not found!" if input_file && !File.exist?(input_file)
|
|
22
24
|
|
|
23
|
-
@zint_symbol =
|
|
24
|
-
|
|
25
|
-
|
|
25
|
+
@zint_symbol = Native.ZBarcode_Create
|
|
26
|
+
self.symbology = symbology
|
|
27
|
+
kwargs.each do |k, v|
|
|
28
|
+
send("#{k}=", v)
|
|
26
29
|
end
|
|
27
30
|
|
|
28
31
|
@value = value
|
|
@@ -31,9 +34,14 @@ module Zint
|
|
|
31
34
|
|
|
32
35
|
# Exports barcode to file
|
|
33
36
|
#
|
|
34
|
-
# @param path [String] Path to export file
|
|
37
|
+
# @param path [String] Path to export file.
|
|
38
|
+
# Contains the name of the file to output a resulting barcode symbol to.
|
|
39
|
+
# Must end in .png, .gif, .bmp, .emf, .eps, .pcx, .svg, .tif or .txt
|
|
35
40
|
# @param rotate_angle [Integer] Rotate angle in degrees (0, 90, 180, 270)
|
|
36
41
|
def to_file(path:, rotate_angle: 0)
|
|
42
|
+
unless outfile == 'out.png'
|
|
43
|
+
raise AlreadyGenerated, "to_file was already executed"
|
|
44
|
+
end
|
|
37
45
|
@zint_symbol[:outfile] = path
|
|
38
46
|
|
|
39
47
|
if input_file
|
|
@@ -67,6 +75,9 @@ module Zint
|
|
|
67
75
|
# @param rotate_angle [Integer] Rotate angle in degrees (0, 90, 180, 270)
|
|
68
76
|
# @return [String] Exported barcode buffer
|
|
69
77
|
def to_buffer(rotate_angle: 0)
|
|
78
|
+
unless @zint_symbol[:bitmap].null?
|
|
79
|
+
raise AlreadyGenerated, "to_vector was already executed"
|
|
80
|
+
end
|
|
70
81
|
@zint_symbol[:output_options] = Zint::OUT_BUFFER_INTERMEDIATE
|
|
71
82
|
|
|
72
83
|
if input_file
|
|
@@ -100,6 +111,9 @@ module Zint
|
|
|
100
111
|
# @param rotate_angle [Integer] Rotate angle in degrees (0, 90, 180, 270)
|
|
101
112
|
# @return [Zint::Structs::Vector] Vector data of barcode
|
|
102
113
|
def to_vector(rotate_angle: 0)
|
|
114
|
+
unless @zint_symbol[:vector].pointer.null?
|
|
115
|
+
raise AlreadyGenerated, "to_vector was already executed"
|
|
116
|
+
end
|
|
103
117
|
if input_file
|
|
104
118
|
call_function(:ZBarcode_Encode_File_and_Buffer_Vector, @zint_symbol, input_file, rotate_angle)
|
|
105
119
|
else
|
|
@@ -113,6 +127,9 @@ module Zint
|
|
|
113
127
|
end
|
|
114
128
|
|
|
115
129
|
# Free barcode and all memory associated with it.
|
|
130
|
+
#
|
|
131
|
+
# Note: This method is dangerous insofar, that previously exported vectors (by #to_vector ) are no longer usable and any access to them will result in a segfault.
|
|
132
|
+
# It is better to not call this method and leave cleaning up to the garbage collector.
|
|
116
133
|
def free
|
|
117
134
|
@zint_symbol.pointer.free
|
|
118
135
|
end
|
|
@@ -124,12 +141,10 @@ module Zint
|
|
|
124
141
|
@zint_symbol[:symbology]
|
|
125
142
|
end
|
|
126
143
|
|
|
127
|
-
# Sets
|
|
144
|
+
# Sets symbol to use (see BARCODE_XXX below)
|
|
128
145
|
#
|
|
129
146
|
# @param type [Integer] Type of barcode
|
|
130
147
|
def symbology=(type)
|
|
131
|
-
reset_symbol
|
|
132
|
-
|
|
133
148
|
@zint_symbol[:symbology] = type
|
|
134
149
|
end
|
|
135
150
|
|
|
@@ -138,68 +153,58 @@ module Zint
|
|
|
138
153
|
@zint_symbol[:height]
|
|
139
154
|
end
|
|
140
155
|
|
|
141
|
-
# Sets height
|
|
156
|
+
# Sets height in X-dimensions (ignored for fixed-width barcodes)
|
|
142
157
|
#
|
|
143
158
|
# @param height [Float] Height of barcode
|
|
144
159
|
def height=(height)
|
|
145
|
-
reset_symbol
|
|
146
|
-
|
|
147
160
|
@zint_symbol[:height] = height
|
|
148
161
|
end
|
|
149
162
|
|
|
150
|
-
# Gets scale of barcode
|
|
163
|
+
# Gets scale factor of barcode
|
|
151
164
|
def scale
|
|
152
165
|
@zint_symbol[:scale]
|
|
153
166
|
end
|
|
154
167
|
|
|
155
|
-
# Sets scale
|
|
168
|
+
# Sets scale factor when printing barcode
|
|
156
169
|
#
|
|
157
170
|
# @param scale [Float] Scale of barcode
|
|
158
171
|
def scale=(scale)
|
|
159
|
-
reset_symbol
|
|
160
|
-
|
|
161
172
|
@zint_symbol[:scale] = scale
|
|
162
173
|
end
|
|
163
174
|
|
|
164
|
-
# Gets whitespace
|
|
175
|
+
# Gets width in X-dimensions of whitespace to left & right of barcode
|
|
165
176
|
def whitespace_width
|
|
166
177
|
@zint_symbol[:whitespace_width]
|
|
167
178
|
end
|
|
168
179
|
|
|
169
|
-
# Sets whitespace
|
|
180
|
+
# Sets width in X-dimensions of whitespace to left & right of barcode
|
|
170
181
|
#
|
|
171
|
-
# @param
|
|
182
|
+
# @param whitespace_width [Integer] Whitespace width of barcode
|
|
172
183
|
def whitespace_width=(whitespace_width)
|
|
173
|
-
reset_symbol
|
|
174
|
-
|
|
175
184
|
@zint_symbol[:whitespace_width] = whitespace_width
|
|
176
185
|
end
|
|
177
186
|
|
|
178
|
-
# Gets
|
|
187
|
+
# Gets height in X-dimensions of whitespace above & below the barcode
|
|
179
188
|
def whitespace_height
|
|
180
189
|
@zint_symbol[:whitespace_height]
|
|
181
190
|
end
|
|
182
191
|
|
|
183
|
-
# Sets
|
|
192
|
+
# Sets height in X-dimensions of whitespace above & below the barcode
|
|
184
193
|
#
|
|
185
|
-
# @param
|
|
194
|
+
# @param whitespace_height [Integer] Whitespace height of barcode
|
|
186
195
|
def whitespace_height=(whitespace_height)
|
|
187
|
-
reset_symbol
|
|
188
|
-
|
|
189
196
|
@zint_symbol[:whitespace_height] = whitespace_height
|
|
190
197
|
end
|
|
191
198
|
|
|
192
|
-
# Gets border
|
|
199
|
+
# Gets size of border in X-dimensions
|
|
193
200
|
def border_width
|
|
194
201
|
@zint_symbol[:border_width]
|
|
195
202
|
end
|
|
196
203
|
|
|
197
|
-
# Sets border
|
|
204
|
+
# Sets size of border in X-dimensions
|
|
198
205
|
#
|
|
199
|
-
# @param
|
|
206
|
+
# @param border_width [Integer] Border width of barcode
|
|
200
207
|
def border_width=(border_width)
|
|
201
|
-
reset_symbol
|
|
202
|
-
|
|
203
208
|
@zint_symbol[:border_width] = border_width
|
|
204
209
|
end
|
|
205
210
|
|
|
@@ -208,46 +213,42 @@ module Zint
|
|
|
208
213
|
@zint_symbol[:output_options]
|
|
209
214
|
end
|
|
210
215
|
|
|
211
|
-
#
|
|
216
|
+
# Set various output parameters (bind, box etc, see below) of barcode
|
|
212
217
|
#
|
|
213
|
-
# @param
|
|
218
|
+
# @param output_options [Integer] Output options of barcode
|
|
214
219
|
def output_options=(output_options)
|
|
215
|
-
reset_symbol
|
|
216
|
-
|
|
217
220
|
@zint_symbol[:output_options] = output_options
|
|
218
221
|
end
|
|
219
222
|
|
|
220
223
|
# Gets foreground colour of barcode
|
|
221
224
|
def fgcolour
|
|
222
|
-
@zint_symbol[:fgcolour]
|
|
225
|
+
@zint_symbol[:fgcolour].to_s
|
|
223
226
|
end
|
|
224
227
|
|
|
225
|
-
# Sets foreground
|
|
228
|
+
# Sets foreground as RGB/RGBA hexadecimal string, 6 or 8 characters, NUL-terminated
|
|
226
229
|
#
|
|
227
230
|
# @param fgcolour [String] Foreground colour of barcode
|
|
228
231
|
def fgcolour=(fgcolour)
|
|
229
|
-
reset_symbol
|
|
230
|
-
|
|
231
232
|
@zint_symbol[:fgcolour] = fgcolour
|
|
232
233
|
end
|
|
233
234
|
|
|
234
235
|
# Gets background colour of barcode
|
|
235
236
|
def bgcolour
|
|
236
|
-
@zint_symbol[:bgcolour]
|
|
237
|
+
@zint_symbol[:bgcolour].to_s
|
|
237
238
|
end
|
|
238
239
|
|
|
239
|
-
# Sets background
|
|
240
|
+
# Sets background as RGB/RGBA hexadecimal string, 6 or 8 characters, NUL-terminated
|
|
240
241
|
#
|
|
241
242
|
# @param bgcolour [String] Background color of barcode
|
|
242
243
|
def bgcolour=(bgcolour)
|
|
243
|
-
reset_symbol
|
|
244
|
-
|
|
245
244
|
@zint_symbol[:bgcolour] = bgcolour
|
|
246
245
|
end
|
|
247
246
|
|
|
248
|
-
#
|
|
247
|
+
# Contains the name of the file to output a resulting barcode symbol to.
|
|
248
|
+
#
|
|
249
|
+
# Must end in .png, .gif, .bmp, .emf, .eps, .pcx, .svg, .tif or .txt
|
|
249
250
|
def outfile
|
|
250
|
-
@zint_symbol[:outfile]
|
|
251
|
+
@zint_symbol[:outfile].to_s
|
|
251
252
|
end
|
|
252
253
|
|
|
253
254
|
# Gets option 1 of barcode
|
|
@@ -255,12 +256,10 @@ module Zint
|
|
|
255
256
|
@zint_symbol[:option_1]
|
|
256
257
|
end
|
|
257
258
|
|
|
258
|
-
# Sets option 1
|
|
259
|
+
# Sets option 1 (symbol-specific options (see "../docs/manual.txt"))
|
|
259
260
|
#
|
|
260
261
|
# @param option_1 [Integer] Option 1 of barcode
|
|
261
262
|
def option_1=(option_1)
|
|
262
|
-
reset_symbol
|
|
263
|
-
|
|
264
263
|
@zint_symbol[:option_1] = option_1
|
|
265
264
|
end
|
|
266
265
|
|
|
@@ -269,12 +268,10 @@ module Zint
|
|
|
269
268
|
@zint_symbol[:option_2]
|
|
270
269
|
end
|
|
271
270
|
|
|
272
|
-
# Sets option 2 of barcode
|
|
271
|
+
# Sets option 2 (symbol-specific options) of barcode
|
|
273
272
|
#
|
|
274
|
-
# @param
|
|
273
|
+
# @param option_2 [Integer] Option 2 of barcode
|
|
275
274
|
def option_2=(option_2)
|
|
276
|
-
reset_symbol
|
|
277
|
-
|
|
278
275
|
@zint_symbol[:option_2] = option_2
|
|
279
276
|
end
|
|
280
277
|
|
|
@@ -283,12 +280,10 @@ module Zint
|
|
|
283
280
|
@zint_symbol[:option_3]
|
|
284
281
|
end
|
|
285
282
|
|
|
286
|
-
# Sets option 3 of barcode
|
|
283
|
+
# Sets option 3 (symbol-specific options) of barcode
|
|
287
284
|
#
|
|
288
|
-
# @param
|
|
285
|
+
# @param option_3 [Integer] Option 3 of barcode
|
|
289
286
|
def option_3=(option_3)
|
|
290
|
-
reset_symbol
|
|
291
|
-
|
|
292
287
|
@zint_symbol[:option_3] = option_3
|
|
293
288
|
end
|
|
294
289
|
|
|
@@ -298,12 +293,10 @@ module Zint
|
|
|
298
293
|
end
|
|
299
294
|
|
|
300
295
|
# Sets show_hrt of barcode
|
|
301
|
-
#
|
|
296
|
+
# show = 1 or hide = 0 Human Readable Text. Default is show (1)
|
|
302
297
|
#
|
|
303
298
|
# @param show_hrt [Integer] show_hrt of barcode
|
|
304
299
|
def show_hrt=(show_hrt)
|
|
305
|
-
reset_symbol
|
|
306
|
-
|
|
307
300
|
@zint_symbol[:show_hrt] = show_hrt
|
|
308
301
|
end
|
|
309
302
|
|
|
@@ -312,12 +305,10 @@ module Zint
|
|
|
312
305
|
@zint_symbol[:fontsize]
|
|
313
306
|
end
|
|
314
307
|
|
|
315
|
-
# Sets font size of barcode
|
|
308
|
+
# Sets font size of barcode (Unused)
|
|
316
309
|
#
|
|
317
|
-
# @param
|
|
310
|
+
# @param fontsize [Integer] Font size of barcode
|
|
318
311
|
def fontsize=(fontsize)
|
|
319
|
-
reset_symbol
|
|
320
|
-
|
|
321
312
|
@zint_symbol[:fontsize] = fontsize
|
|
322
313
|
end
|
|
323
314
|
|
|
@@ -326,12 +317,10 @@ module Zint
|
|
|
326
317
|
@zint_symbol[:input_mode]
|
|
327
318
|
end
|
|
328
319
|
|
|
329
|
-
# Sets input
|
|
320
|
+
# Sets encoding of input data (see DATA_MODE etc below). Default DATA_MODE
|
|
330
321
|
#
|
|
331
322
|
# @param input_mode [Integer] Input mode of barcode
|
|
332
323
|
def input_mode=(input_mode)
|
|
333
|
-
reset_symbol
|
|
334
|
-
|
|
335
324
|
@zint_symbol[:input_mode] = input_mode
|
|
336
325
|
end
|
|
337
326
|
|
|
@@ -340,26 +329,58 @@ module Zint
|
|
|
340
329
|
@zint_symbol[:eci]
|
|
341
330
|
end
|
|
342
331
|
|
|
343
|
-
# Sets
|
|
332
|
+
# Sets extended Channel Interpretation. Default 0 (none)
|
|
344
333
|
#
|
|
345
334
|
# @param eci [Integer] ECI of barcode
|
|
346
335
|
def eci=(eci)
|
|
347
|
-
reset_symbol
|
|
348
|
-
|
|
349
336
|
@zint_symbol[:eci] = eci
|
|
350
337
|
end
|
|
351
338
|
|
|
352
|
-
# Gets
|
|
339
|
+
# Gets resolution of output in dots per mm (BMP/EMF/PCX/PNG/TIF only). Default 0 (none)
|
|
340
|
+
def dpmm
|
|
341
|
+
@zint_symbol[:dpmm]
|
|
342
|
+
end
|
|
343
|
+
|
|
344
|
+
# Sets resolution of output in dots per mm (BMP/EMF/PCX/PNG/TIF only). Default 0 (none)
|
|
345
|
+
#
|
|
346
|
+
# @param dpmm [Float] Resolution of output in dots per mm
|
|
347
|
+
def dpmm=(dpmm)
|
|
348
|
+
@zint_symbol[:dpmm] = dpmm
|
|
349
|
+
end
|
|
350
|
+
|
|
351
|
+
# Gets height in X-dimensions that EAN/UPC guard bars descend. Default 5
|
|
352
|
+
def guard_descent
|
|
353
|
+
@zint_symbol[:guard_descent]
|
|
354
|
+
end
|
|
355
|
+
|
|
356
|
+
# Sets height in X-dimensions that EAN/UPC guard bars descend. Default 5
|
|
357
|
+
#
|
|
358
|
+
# @param guard_descent [Float] Height in X-dimensions that EAN/UPC guard bars descend
|
|
359
|
+
def guard_descent=(guard_descent)
|
|
360
|
+
@zint_symbol[:guard_descent] = guard_descent
|
|
361
|
+
end
|
|
362
|
+
|
|
363
|
+
# Gets structured append info. Default structapp.count 0 (none)
|
|
364
|
+
def structapp
|
|
365
|
+
@zint_symbol[:structapp]
|
|
366
|
+
end
|
|
367
|
+
|
|
368
|
+
# Sets structured append info. Default structapp.count 0 (none)
|
|
369
|
+
#
|
|
370
|
+
# @param structapp [Structs::Structapp] Structured append info
|
|
371
|
+
def structapp=(structapp)
|
|
372
|
+
@zint_symbol[:structapp] = structapp
|
|
373
|
+
end
|
|
374
|
+
|
|
375
|
+
# Human Readable Text, which usually consists of input data plus one more check digit. Uses UTF-8 formatting.
|
|
353
376
|
def text
|
|
354
|
-
@zint_symbol[:text]
|
|
377
|
+
@zint_symbol[:text].to_s.force_encoding(Encoding::UTF_8)
|
|
355
378
|
end
|
|
356
379
|
|
|
357
|
-
# Sets
|
|
380
|
+
# Sets Human Readable Text (if any), UTF-8, NUL-terminated (output only) of barcode
|
|
358
381
|
#
|
|
359
382
|
# @param text [String] Text of barcode
|
|
360
383
|
def text=(text)
|
|
361
|
-
reset_symbol
|
|
362
|
-
|
|
363
384
|
@zint_symbol[:text] = text
|
|
364
385
|
end
|
|
365
386
|
|
|
@@ -373,31 +394,27 @@ module Zint
|
|
|
373
394
|
@zint_symbol[:width]
|
|
374
395
|
end
|
|
375
396
|
|
|
376
|
-
# Gets primary message data for more complex symbols
|
|
397
|
+
# Gets primary message data for more complex symbols
|
|
377
398
|
def primary
|
|
378
|
-
@zint_symbol[:primary]
|
|
399
|
+
@zint_symbol[:primary].to_s
|
|
379
400
|
end
|
|
380
401
|
|
|
381
|
-
# Sets primary message of barcode
|
|
402
|
+
# Sets primary message data (MaxiCode, Composite), NUL-terminated of barcode
|
|
382
403
|
#
|
|
383
404
|
# @param primary [String] Primary of barcode
|
|
384
405
|
def primary=(primary)
|
|
385
|
-
reset_symbol
|
|
386
|
-
|
|
387
406
|
@zint_symbol[:primary] = primary
|
|
388
407
|
end
|
|
389
408
|
|
|
390
|
-
# Gets
|
|
409
|
+
# Gets encoded data of barcode
|
|
391
410
|
def encoded_data
|
|
392
411
|
@zint_symbol[:encoded_data]
|
|
393
412
|
end
|
|
394
413
|
|
|
395
|
-
# Sets
|
|
414
|
+
# Sets encoded data (output only). Allows for rows of 1144 modules of barcode
|
|
396
415
|
#
|
|
397
416
|
# @param encoded_data [String] Encoded data of barcode
|
|
398
417
|
def encoded_data=(encoded_data)
|
|
399
|
-
reset_symbol
|
|
400
|
-
|
|
401
418
|
@zint_symbol[:encoded_data] = encoded_data
|
|
402
419
|
end
|
|
403
420
|
|
|
@@ -406,9 +423,9 @@ module Zint
|
|
|
406
423
|
@zint_symbol[:row_height]
|
|
407
424
|
end
|
|
408
425
|
|
|
409
|
-
# Gets error
|
|
426
|
+
# Gets error message in the event that an error occurred
|
|
410
427
|
def errtxt
|
|
411
|
-
@zint_symbol[:errtxt]
|
|
428
|
+
@zint_symbol[:errtxt].to_s.force_encoding(Encoding::UTF_8)
|
|
412
429
|
end
|
|
413
430
|
|
|
414
431
|
# Gets bitmap width of barcode
|
|
@@ -431,26 +448,22 @@ module Zint
|
|
|
431
448
|
@zint_symbol[:dot_size]
|
|
432
449
|
end
|
|
433
450
|
|
|
434
|
-
# Sets
|
|
451
|
+
# Sets size of dots used in BARCODE_DOTTY_MODE
|
|
435
452
|
#
|
|
436
|
-
# @param
|
|
453
|
+
# @param dot_size [Float] Dot size of barcode
|
|
437
454
|
def dot_size=(dot_size)
|
|
438
|
-
reset_symbol
|
|
439
|
-
|
|
440
455
|
@zint_symbol[:dot_size] = dot_size
|
|
441
456
|
end
|
|
442
457
|
|
|
443
|
-
# Gets
|
|
458
|
+
# Gets debugging flags
|
|
444
459
|
def debug
|
|
445
460
|
@zint_symbol[:debug]
|
|
446
461
|
end
|
|
447
462
|
|
|
448
|
-
# Sets
|
|
463
|
+
# Sets debugging flags
|
|
449
464
|
#
|
|
450
465
|
# @param debug [Integer] Debug level of barcode
|
|
451
466
|
def debug=(debug)
|
|
452
|
-
reset_symbol
|
|
453
|
-
|
|
454
467
|
@zint_symbol[:debug] = debug
|
|
455
468
|
end
|
|
456
469
|
|
|
@@ -459,12 +472,10 @@ module Zint
|
|
|
459
472
|
@zint_symbol[:warn_level]
|
|
460
473
|
end
|
|
461
474
|
|
|
462
|
-
# Sets warn level of barcode
|
|
475
|
+
# Sets warn level (affects error/warning value returned by Zint API (see WARN_XXX below)) of barcode
|
|
463
476
|
#
|
|
464
477
|
# @param warn_level [Integer] Warn level of barcode
|
|
465
478
|
def warn_level=(warn_level)
|
|
466
|
-
reset_symbol
|
|
467
|
-
|
|
468
479
|
@zint_symbol[:warn_level] = warn_level
|
|
469
480
|
end
|
|
470
481
|
|
|
@@ -483,12 +494,5 @@ module Zint
|
|
|
483
494
|
|
|
484
495
|
error_code
|
|
485
496
|
end
|
|
486
|
-
|
|
487
|
-
def create_symbol(type)
|
|
488
|
-
symbol = Native.ZBarcode_Create
|
|
489
|
-
symbol[:symbology] = type
|
|
490
|
-
|
|
491
|
-
symbol
|
|
492
|
-
end
|
|
493
497
|
end
|
|
494
498
|
end
|
data/lib/zint/bc_412.rb
ADDED
data/lib/zint/c25iata.rb
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
module Zint
|
|
2
|
+
# 2 of 5 IATA
|
|
2
3
|
class C25iata < Barcode
|
|
3
|
-
def initialize(value: nil, input_file: nil,
|
|
4
|
-
super(value: value, input_file: input_file,
|
|
4
|
+
def initialize(value: nil, input_file: nil, **kwargs)
|
|
5
|
+
super(value: value, input_file: input_file, symbology: Zint::BARCODE_C25IATA, **kwargs)
|
|
5
6
|
end
|
|
6
7
|
end
|
|
7
8
|
end
|
data/lib/zint/c25ind.rb
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
module Zint
|
|
2
|
+
# 2 of 5 Industrial
|
|
2
3
|
class C25ind < Barcode
|
|
3
|
-
def initialize(value: nil, input_file: nil,
|
|
4
|
-
super(value: value, input_file: input_file,
|
|
4
|
+
def initialize(value: nil, input_file: nil, **kwargs)
|
|
5
|
+
super(value: value, input_file: input_file, symbology: Zint::BARCODE_C25IND, **kwargs)
|
|
5
6
|
end
|
|
6
7
|
end
|
|
7
8
|
end
|