barby 0.6.4 → 0.6.5
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/lib/barby/barcode/code_128.rb +11 -18
- data/lib/barby/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bf63b4cabe71e145f367917c72ddd3a87b44655d
|
4
|
+
data.tar.gz: 978466b7b734651b5f9362b67136033bdcf572a7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8152a2ea8b9b84264e904f5d50f61c6712fd238580041b5cc0852eacdce210b9e4d6a345ea753c3c4d58c62439d69ab7882006643caa31607eefedcc6226268d
|
7
|
+
data.tar.gz: 0b9e1005bc39a1ea0e8ecd6c57947be36f35e8d1a5529c48073f7d505bc82fa92a7ca1c67d987eb9f94507edd4f5b501cf58c4f994fd8339687fd1659f665404
|
@@ -405,6 +405,9 @@ module Barby
|
|
405
405
|
LOWR_RE = /[a-z]/
|
406
406
|
DGTS_RE = /\d{4,}/
|
407
407
|
|
408
|
+
# pairs of digits and FNC1 characters
|
409
|
+
CODEC_CHARS_RE = /(?:\d{2}|#{FNC1}){2,}/
|
410
|
+
|
408
411
|
class << self
|
409
412
|
|
410
413
|
|
@@ -424,7 +427,7 @@ module Barby
|
|
424
427
|
#shortest encoding possible
|
425
428
|
def apply_shortest_encoding_for_data(data)
|
426
429
|
extract_codec(data).map do |block|
|
427
|
-
if
|
430
|
+
if codec_segment?(block)
|
428
431
|
"#{CODEC}#{block}"
|
429
432
|
else
|
430
433
|
if control_before_lowercase?(block)
|
@@ -454,25 +457,15 @@ module Barby
|
|
454
457
|
# # C A or B C A or B
|
455
458
|
# extract_codec("12345abc678910DEF11") => ["1234", "5abc", "678910", "DEF11"]
|
456
459
|
def extract_codec(data)
|
457
|
-
|
458
|
-
|
459
|
-
|
460
|
-
|
461
|
-
|
462
|
-
segments[1].insert(0, s.slice!(-1))
|
463
|
-
else
|
464
|
-
segments[1] = s.slice!(-1)
|
465
|
-
end
|
466
|
-
else
|
467
|
-
segments[i-1].insert(-1, s.slice!(0)) if segments[i-1]
|
468
|
-
end
|
469
|
-
end
|
470
|
-
end
|
471
|
-
segments
|
460
|
+
data.split(/
|
461
|
+
(^(?:#{CODEC_CHARS_RE})) # matches digits that appear at the beginning of the barcode
|
462
|
+
|
|
463
|
+
((?:#{CODEC_CHARS_RE})(?!\d)) # matches digits that appear later in the barcode
|
464
|
+
/x).reject(&:empty?)
|
472
465
|
end
|
473
466
|
|
474
|
-
def
|
475
|
-
data =~ /\A
|
467
|
+
def codec_segment?(data)
|
468
|
+
data =~ /\A#{CODEC_CHARS_RE}\Z/
|
476
469
|
end
|
477
470
|
|
478
471
|
def control_character?(char)
|
data/lib/barby/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: barby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tore Darell
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-11-30 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Barby creates barcodes.
|
14
14
|
email: toredarell@gmail.com
|