summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorDaniel Gredler <daniel.gredler@gmail.com>2026-05-01 00:56:28 +0300
committerGitHub <noreply@github.com>2026-05-01 00:56:28 +0300
commit577a919b8bdc975b52f72a3c1d3f18eaf9b2e65d (patch)
tree8d3eec1bb36f44cc6ccaa41c7df31944ed8d2f9e /core
parent494ed8dc7d143556bb6a3407db40ee768fb02e9b (diff)
downloadzxing-577a919b8bdc975b52f72a3c1d3f18eaf9b2e65d.tar.xz
Add Code 128 reader initialization support (#2068)
Diffstat (limited to 'core')
-rw-r--r--core/src/main/java/com/google/zxing/oned/Code128Reader.java10
-rw-r--r--core/src/test/java/com/google/zxing/oned/Code128BlackBox1TestCase.java4
-rw-r--r--core/src/test/resources/blackbox/code128-1/1.metadata.txt1
-rw-r--r--core/src/test/resources/blackbox/code128-1/2.metadata.txt1
-rw-r--r--core/src/test/resources/blackbox/code128-1/7.metadata.txt1
-rw-r--r--core/src/test/resources/blackbox/code128-1/7.pngbin0 -> 1106 bytes
-rw-r--r--core/src/test/resources/blackbox/code128-1/7.txt1
7 files changed, 13 insertions, 5 deletions
diff --git a/core/src/main/java/com/google/zxing/oned/Code128Reader.java b/core/src/main/java/com/google/zxing/oned/Code128Reader.java
index a6322a395..48703ca9f 100644
--- a/core/src/main/java/com/google/zxing/oned/Code128Reader.java
+++ b/core/src/main/java/com/google/zxing/oned/Code128Reader.java
@@ -240,6 +240,7 @@ public final class Code128Reader extends OneDReader {
boolean convertFNC1 = hints != null && hints.containsKey(DecodeHintType.ASSUME_GS1);
int symbologyModifier = 0;
+ boolean readerInit = false;
int[] startPatternInfo = findStartPattern(row);
int startCode = startPatternInfo[2];
@@ -362,7 +363,7 @@ public final class Code128Reader extends OneDReader {
symbologyModifier = 4;
break;
case CODE_FNC_3:
- // do nothing?
+ readerInit = true;
break;
case CODE_FNC_4_A:
if (!upperMode && shiftUpperMode) {
@@ -425,7 +426,7 @@ public final class Code128Reader extends OneDReader {
symbologyModifier = 4;
break;
case CODE_FNC_3:
- // do nothing?
+ readerInit = true;
break;
case CODE_FNC_4_B:
if (!upperMode && shiftUpperMode) {
@@ -547,6 +548,7 @@ public final class Code128Reader extends OneDReader {
for (int i = 0; i < rawCodesSize; i++) {
rawBytes[i] = rawCodes.get(i);
}
+
Result resultObject = new Result(
result.toString(),
rawBytes,
@@ -554,9 +556,11 @@ public final class Code128Reader extends OneDReader {
new ResultPoint(left, rowNumber),
new ResultPoint(right, rowNumber)},
BarcodeFormat.CODE_128);
+
resultObject.putMetadata(ResultMetadataType.SYMBOLOGY_IDENTIFIER, "]C" + symbologyModifier);
- return resultObject;
+ resultObject.putMetadata(ResultMetadataType.READER_INIT, readerInit);
+ return resultObject;
}
}
diff --git a/core/src/test/java/com/google/zxing/oned/Code128BlackBox1TestCase.java b/core/src/test/java/com/google/zxing/oned/Code128BlackBox1TestCase.java
index 1a49f0ea2..1885a24a9 100644
--- a/core/src/test/java/com/google/zxing/oned/Code128BlackBox1TestCase.java
+++ b/core/src/test/java/com/google/zxing/oned/Code128BlackBox1TestCase.java
@@ -27,8 +27,8 @@ public final class Code128BlackBox1TestCase extends AbstractBlackBoxTestCase {
public Code128BlackBox1TestCase() {
super("src/test/resources/blackbox/code128-1", new MultiFormatReader(), BarcodeFormat.CODE_128);
- addTest(6, 6, 0.0f);
- addTest(6, 6, 180.0f);
+ addTest(7, 7, 0.0f);
+ addTest(7, 7, 180.0f);
}
} \ No newline at end of file
diff --git a/core/src/test/resources/blackbox/code128-1/1.metadata.txt b/core/src/test/resources/blackbox/code128-1/1.metadata.txt
index 8e0da93bf..7c1f4c767 100644
--- a/core/src/test/resources/blackbox/code128-1/1.metadata.txt
+++ b/core/src/test/resources/blackbox/code128-1/1.metadata.txt
@@ -1 +1,2 @@
SYMBOLOGY_IDENTIFIER=]C1
+READER_INIT=false
diff --git a/core/src/test/resources/blackbox/code128-1/2.metadata.txt b/core/src/test/resources/blackbox/code128-1/2.metadata.txt
index d93697dc1..299cc069e 100644
--- a/core/src/test/resources/blackbox/code128-1/2.metadata.txt
+++ b/core/src/test/resources/blackbox/code128-1/2.metadata.txt
@@ -1 +1,2 @@
SYMBOLOGY_IDENTIFIER=]C0
+READER_INIT=false
diff --git a/core/src/test/resources/blackbox/code128-1/7.metadata.txt b/core/src/test/resources/blackbox/code128-1/7.metadata.txt
new file mode 100644
index 000000000..07e017bbc
--- /dev/null
+++ b/core/src/test/resources/blackbox/code128-1/7.metadata.txt
@@ -0,0 +1 @@
+READER_INIT=true
diff --git a/core/src/test/resources/blackbox/code128-1/7.png b/core/src/test/resources/blackbox/code128-1/7.png
new file mode 100644
index 000000000..b27527e81
--- /dev/null
+++ b/core/src/test/resources/blackbox/code128-1/7.png
Binary files differ
diff --git a/core/src/test/resources/blackbox/code128-1/7.txt b/core/src/test/resources/blackbox/code128-1/7.txt
new file mode 100644
index 000000000..d96dc9570
--- /dev/null
+++ b/core/src/test/resources/blackbox/code128-1/7.txt
@@ -0,0 +1 @@
+abcdef \ No newline at end of file