mirror of
https://github.com/starovoid/rxing.git
synced 2026-07-26 04:12:34 +00:00
update to 0.4.8
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "rxing"
|
name = "rxing"
|
||||||
version = "0.4.7"
|
version = "0.4.8"
|
||||||
description="A rust port of the zxing barcode library."
|
description="A rust port of the zxing barcode library."
|
||||||
license="Apache-2.0"
|
license="Apache-2.0"
|
||||||
repository="https://github.com/rxing-core/rxing"
|
repository="https://github.com/rxing-core/rxing"
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ fn get_image(
|
|||||||
|
|
||||||
fn aztec_benchmark(c: &mut Criterion) {
|
fn aztec_benchmark(c: &mut Criterion) {
|
||||||
let mut image = get_image("test_resources/blackbox/aztec-1/abc-37x37.png");
|
let mut image = get_image("test_resources/blackbox/aztec-1/abc-37x37.png");
|
||||||
let mut reader = AztecReader::default();
|
let mut reader = AztecReader;
|
||||||
|
|
||||||
c.bench_function("aztec", |b| {
|
c.bench_function("aztec", |b| {
|
||||||
b.iter(|| {
|
b.iter(|| {
|
||||||
@@ -70,7 +70,7 @@ fn code93_benchmark(c: &mut Criterion) {
|
|||||||
|
|
||||||
fn datamatrix_benchmark(c: &mut Criterion) {
|
fn datamatrix_benchmark(c: &mut Criterion) {
|
||||||
let mut image = get_image("test_resources/blackbox/datamatrix-1/C40.png");
|
let mut image = get_image("test_resources/blackbox/datamatrix-1/C40.png");
|
||||||
let mut reader = DataMatrixReader::default();
|
let mut reader = DataMatrixReader;
|
||||||
|
|
||||||
c.bench_function("datamatrix", |b| {
|
c.bench_function("datamatrix", |b| {
|
||||||
b.iter(|| {
|
b.iter(|| {
|
||||||
@@ -81,7 +81,7 @@ fn datamatrix_benchmark(c: &mut Criterion) {
|
|||||||
|
|
||||||
fn ean8_benchmark(c: &mut Criterion) {
|
fn ean8_benchmark(c: &mut Criterion) {
|
||||||
let mut image = get_image("test_resources/blackbox/ean8-1/1.png");
|
let mut image = get_image("test_resources/blackbox/ean8-1/1.png");
|
||||||
let mut reader = EAN8Reader::default();
|
let mut reader = EAN8Reader;
|
||||||
|
|
||||||
c.bench_function("ean8", |b| {
|
c.bench_function("ean8", |b| {
|
||||||
b.iter(|| {
|
b.iter(|| {
|
||||||
@@ -92,7 +92,7 @@ fn ean8_benchmark(c: &mut Criterion) {
|
|||||||
|
|
||||||
fn ean13_benchmark(c: &mut Criterion) {
|
fn ean13_benchmark(c: &mut Criterion) {
|
||||||
let mut image = get_image("test_resources/blackbox/ean13-1/1.png");
|
let mut image = get_image("test_resources/blackbox/ean13-1/1.png");
|
||||||
let mut reader = EAN13Reader::default();
|
let mut reader = EAN13Reader;
|
||||||
|
|
||||||
c.bench_function("ean13", |b| {
|
c.bench_function("ean13", |b| {
|
||||||
b.iter(|| {
|
b.iter(|| {
|
||||||
@@ -125,7 +125,7 @@ fn maxicode_benchmark(c: &mut Criterion) {
|
|||||||
|
|
||||||
fn pdf417_benchmark(c: &mut Criterion) {
|
fn pdf417_benchmark(c: &mut Criterion) {
|
||||||
let mut image = get_image("test_resources/blackbox/pdf417-1/01.png");
|
let mut image = get_image("test_resources/blackbox/pdf417-1/01.png");
|
||||||
let mut reader = PDF417Reader::default();
|
let mut reader = PDF417Reader;
|
||||||
|
|
||||||
c.bench_function("pdf417", |b| {
|
c.bench_function("pdf417", |b| {
|
||||||
b.iter(|| {
|
b.iter(|| {
|
||||||
@@ -136,7 +136,7 @@ fn pdf417_benchmark(c: &mut Criterion) {
|
|||||||
|
|
||||||
fn qrcode_benchmark(c: &mut Criterion) {
|
fn qrcode_benchmark(c: &mut Criterion) {
|
||||||
let mut image = get_image("test_resources/blackbox/qrcode-2/1.png");
|
let mut image = get_image("test_resources/blackbox/qrcode-2/1.png");
|
||||||
let mut reader = QRCodeReader::default();
|
let mut reader = QRCodeReader;
|
||||||
|
|
||||||
c.bench_function("qrcode", |b| {
|
c.bench_function("qrcode", |b| {
|
||||||
b.iter(|| {
|
b.iter(|| {
|
||||||
@@ -179,7 +179,7 @@ fn upce_benchmark(c: &mut Criterion) {
|
|||||||
let mut image = get_image("test_resources/blackbox/upce-1/1.png");
|
let mut image = get_image("test_resources/blackbox/upce-1/1.png");
|
||||||
c.bench_function("upce", |b| {
|
c.bench_function("upce", |b| {
|
||||||
b.iter(|| {
|
b.iter(|| {
|
||||||
let mut reader = UPCEReader::default();
|
let mut reader = UPCEReader;
|
||||||
let _res = reader.decode(&mut image);
|
let _res = reader.decode(&mut image);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -456,7 +456,7 @@ impl<'a> Detector<'_> {
|
|||||||
* diagonal just outside the bull's eye.
|
* diagonal just outside the bull's eye.
|
||||||
*/
|
*/
|
||||||
fn sample_grid(&self, image: &BitMatrix, quad: Quadrilateral) -> Result<BitMatrix> {
|
fn sample_grid(&self, image: &BitMatrix, quad: Quadrilateral) -> Result<BitMatrix> {
|
||||||
let sampler = DefaultGridSampler::default();
|
let sampler = DefaultGridSampler;
|
||||||
let dimension = self.get_dimension();
|
let dimension = self.get_dimension();
|
||||||
|
|
||||||
let low = dimension as f32 / 2.0 - self.nb_center_layers as f32;
|
let low = dimension as f32 / 2.0 - self.nb_center_layers as f32;
|
||||||
|
|||||||
@@ -333,7 +333,7 @@ impl<'a> Detector<'_> {
|
|||||||
dimensionX: u32,
|
dimensionX: u32,
|
||||||
dimensionY: u32,
|
dimensionY: u32,
|
||||||
) -> Result<BitMatrix> {
|
) -> Result<BitMatrix> {
|
||||||
let sampler = DefaultGridSampler::default();
|
let sampler = DefaultGridSampler;
|
||||||
|
|
||||||
let dst = Quadrilateral::new(
|
let dst = Quadrilateral::new(
|
||||||
point_f(0.5, 0.5),
|
point_f(0.5, 0.5),
|
||||||
|
|||||||
@@ -214,7 +214,7 @@ fn Scan(
|
|||||||
movedTowardsBy(bl, tl, br, 0.5),
|
movedTowardsBy(bl, tl, br, 0.5),
|
||||||
);
|
);
|
||||||
|
|
||||||
let grid_sampler = DefaultGridSampler::default();
|
let grid_sampler = DefaultGridSampler;
|
||||||
// let transform = PerspectiveTransform::quadrilateralToQuadrilateral(x0, y0, x1, y1, x2, y2, x3, y3, x0p, y0p, x1p, y1p, x2p, y2p, x3p, y3p);
|
// let transform = PerspectiveTransform::quadrilateralToQuadrilateral(x0, y0, x1, y1, x2, y2, x3, y3, x0p, y0p, x1p, y1p, x2p, y2p, x3p, y3p);
|
||||||
let dst = Quadrilateral::new(
|
let dst = Quadrilateral::new(
|
||||||
point_f(0.0, 0.0),
|
point_f(0.0, 0.0),
|
||||||
|
|||||||
@@ -332,7 +332,7 @@ pub fn detect(image: &BitMatrix, try_harder: bool) -> Result<MaxicodeDetectionRe
|
|||||||
return Err(Exceptions::NOT_FOUND)
|
return Err(Exceptions::NOT_FOUND)
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
let grid_sampler = DefaultGridSampler::default();
|
let grid_sampler = DefaultGridSampler;
|
||||||
|
|
||||||
let [tl, bl, tr, br] = symbol_box.0;
|
let [tl, bl, tr, br] = symbol_box.0;
|
||||||
|
|
||||||
|
|||||||
@@ -174,25 +174,19 @@ impl MultiFormatReader {
|
|||||||
for possible_format in self.possible_formats.iter() {
|
for possible_format in self.possible_formats.iter() {
|
||||||
let res = match possible_format {
|
let res = match possible_format {
|
||||||
BarcodeFormat::QR_CODE => {
|
BarcodeFormat::QR_CODE => {
|
||||||
let cpp = QrReader::default().decode_with_hints(image, &self.hints);
|
let cpp = QrReader.decode_with_hints(image, &self.hints);
|
||||||
if cpp.is_ok() {
|
if cpp.is_ok() {
|
||||||
cpp
|
cpp
|
||||||
} else {
|
} else {
|
||||||
QRCodeReader::default().decode_with_hints(image, &self.hints)
|
QRCodeReader.decode_with_hints(image, &self.hints)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
BarcodeFormat::MICRO_QR_CODE => {
|
BarcodeFormat::MICRO_QR_CODE => QrReader.decode_with_hints(image, &self.hints),
|
||||||
QrReader::default().decode_with_hints(image, &self.hints)
|
|
||||||
}
|
|
||||||
BarcodeFormat::DATA_MATRIX => {
|
BarcodeFormat::DATA_MATRIX => {
|
||||||
DataMatrixReader::default().decode_with_hints(image, &self.hints)
|
DataMatrixReader.decode_with_hints(image, &self.hints)
|
||||||
}
|
|
||||||
BarcodeFormat::AZTEC => {
|
|
||||||
AztecReader::default().decode_with_hints(image, &self.hints)
|
|
||||||
}
|
|
||||||
BarcodeFormat::PDF_417 => {
|
|
||||||
PDF417Reader::default().decode_with_hints(image, &self.hints)
|
|
||||||
}
|
}
|
||||||
|
BarcodeFormat::AZTEC => AztecReader.decode_with_hints(image, &self.hints),
|
||||||
|
BarcodeFormat::PDF_417 => PDF417Reader.decode_with_hints(image, &self.hints),
|
||||||
BarcodeFormat::MAXICODE => {
|
BarcodeFormat::MAXICODE => {
|
||||||
MaxiCodeReader::default().decode_with_hints(image, &self.hints)
|
MaxiCodeReader::default().decode_with_hints(image, &self.hints)
|
||||||
}
|
}
|
||||||
@@ -214,19 +208,19 @@ impl MultiFormatReader {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if let Ok(res) = QrReader::default().decode_with_hints(image, &self.hints) {
|
if let Ok(res) = QrReader.decode_with_hints(image, &self.hints) {
|
||||||
return Ok(res);
|
return Ok(res);
|
||||||
}
|
}
|
||||||
if let Ok(res) = QRCodeReader::default().decode_with_hints(image, &self.hints) {
|
if let Ok(res) = QRCodeReader.decode_with_hints(image, &self.hints) {
|
||||||
return Ok(res);
|
return Ok(res);
|
||||||
}
|
}
|
||||||
if let Ok(res) = DataMatrixReader::default().decode_with_hints(image, &self.hints) {
|
if let Ok(res) = DataMatrixReader.decode_with_hints(image, &self.hints) {
|
||||||
return Ok(res);
|
return Ok(res);
|
||||||
}
|
}
|
||||||
if let Ok(res) = AztecReader::default().decode_with_hints(image, &self.hints) {
|
if let Ok(res) = AztecReader.decode_with_hints(image, &self.hints) {
|
||||||
return Ok(res);
|
return Ok(res);
|
||||||
}
|
}
|
||||||
if let Ok(res) = PDF417Reader::default().decode_with_hints(image, &self.hints) {
|
if let Ok(res) = PDF417Reader.decode_with_hints(image, &self.hints) {
|
||||||
return Ok(res);
|
return Ok(res);
|
||||||
}
|
}
|
||||||
if let Ok(res) = MaxiCodeReader::default().decode_with_hints(image, &self.hints) {
|
if let Ok(res) = MaxiCodeReader::default().decode_with_hints(image, &self.hints) {
|
||||||
|
|||||||
@@ -216,7 +216,7 @@ mod CodaBarWriterTestCase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn encode(input: &str) -> BitMatrix {
|
fn encode(input: &str) -> BitMatrix {
|
||||||
CodaBarWriter::default()
|
CodaBarWriter
|
||||||
.encode(input, &BarcodeFormat::CODABAR, 0, 0)
|
.encode(input, &BarcodeFormat::CODABAR, 0, 0)
|
||||||
.expect("must encode")
|
.expect("must encode")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -470,7 +470,7 @@ fn testEncodeWithForcedCodeSetFailureCodeSetB() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn encode(toEncode: &str, compact: bool, expectedLoopback: &str) -> Result<BitMatrix> {
|
fn encode(toEncode: &str, compact: bool, expectedLoopback: &str) -> Result<BitMatrix> {
|
||||||
let mut reader = Code128Reader::default();
|
let mut reader = Code128Reader;
|
||||||
|
|
||||||
let mut hints: EncodingHintDictionary = HashMap::new();
|
let mut hints: EncodingHintDictionary = HashMap::new();
|
||||||
if compact {
|
if compact {
|
||||||
|
|||||||
@@ -254,7 +254,7 @@ mod Code39WriterTestCase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn doTest(input: &str, expected: &str) {
|
fn doTest(input: &str, expected: &str) {
|
||||||
let result = Code39Writer::default()
|
let result = Code39Writer
|
||||||
.encode(input, &BarcodeFormat::CODE_39, 0, 0)
|
.encode(input, &BarcodeFormat::CODE_39, 0, 0)
|
||||||
.expect("must encode");
|
.expect("must encode");
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
|
|||||||
@@ -265,7 +265,7 @@ mod Code93WriterTestCase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn doTest(input: &str, expected: &str) {
|
fn doTest(input: &str, expected: &str) {
|
||||||
let result = Code93Writer::default()
|
let result = Code93Writer
|
||||||
.encode(input, &BarcodeFormat::CODE_93, 0, 0)
|
.encode(input, &BarcodeFormat::CODE_93, 0, 0)
|
||||||
.expect("encode");
|
.expect("encode");
|
||||||
assert_eq!(expected, bit_matrix_test_case::matrix_to_string(&result));
|
assert_eq!(expected, bit_matrix_test_case::matrix_to_string(&result));
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ impl UPCEANWriter for EAN13Writer {}
|
|||||||
|
|
||||||
impl OneDimensionalCodeWriter for EAN13Writer {
|
impl OneDimensionalCodeWriter for EAN13Writer {
|
||||||
fn encode_oned(&self, contents: &str) -> Result<Vec<bool>> {
|
fn encode_oned(&self, contents: &str) -> Result<Vec<bool>> {
|
||||||
let reader: EAN13Reader = EAN13Reader::default();
|
let reader: EAN13Reader = EAN13Reader;
|
||||||
let mut contents = contents.to_owned();
|
let mut contents = contents.to_owned();
|
||||||
let length = contents.chars().count();
|
let length = contents.chars().count();
|
||||||
match length {
|
match length {
|
||||||
@@ -147,7 +147,7 @@ mod EAN13WriterTestCase {
|
|||||||
fn testEncode() {
|
fn testEncode() {
|
||||||
let testStr =
|
let testStr =
|
||||||
"00001010001011010011101100110010011011110100111010101011001101101100100001010111001001110100010010100000";
|
"00001010001011010011101100110010011011110100111010101011001101101100100001010111001001110100010010100000";
|
||||||
let result = EAN13Writer::default()
|
let result = EAN13Writer
|
||||||
.encode(
|
.encode(
|
||||||
"5901234123457",
|
"5901234123457",
|
||||||
&BarcodeFormat::EAN_13,
|
&BarcodeFormat::EAN_13,
|
||||||
@@ -162,7 +162,7 @@ mod EAN13WriterTestCase {
|
|||||||
fn testAddChecksumAndEncode() {
|
fn testAddChecksumAndEncode() {
|
||||||
let testStr =
|
let testStr =
|
||||||
"00001010001011010011101100110010011011110100111010101011001101101100100001010111001001110100010010100000";
|
"00001010001011010011101100110010011011110100111010101011001101101100100001010111001001110100010010100000";
|
||||||
let result = EAN13Writer::default()
|
let result = EAN13Writer
|
||||||
.encode(
|
.encode(
|
||||||
"590123412345",
|
"590123412345",
|
||||||
&BarcodeFormat::EAN_13,
|
&BarcodeFormat::EAN_13,
|
||||||
@@ -176,7 +176,7 @@ mod EAN13WriterTestCase {
|
|||||||
#[test]
|
#[test]
|
||||||
#[should_panic]
|
#[should_panic]
|
||||||
fn testEncodeIllegalCharacters() {
|
fn testEncodeIllegalCharacters() {
|
||||||
EAN13Writer::default()
|
EAN13Writer
|
||||||
.encode("5901234123abc", &BarcodeFormat::EAN_13, 0, 0)
|
.encode("5901234123abc", &BarcodeFormat::EAN_13, 0, 0)
|
||||||
.expect("encode");
|
.expect("encode");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ impl OneDimensionalCodeWriter for EAN8Writer {
|
|||||||
*/
|
*/
|
||||||
fn encode_oned(&self, contents: &str) -> Result<Vec<bool>> {
|
fn encode_oned(&self, contents: &str) -> Result<Vec<bool>> {
|
||||||
let length = contents.chars().count();
|
let length = contents.chars().count();
|
||||||
let reader = EAN8Reader::default();
|
let reader = EAN8Reader;
|
||||||
let mut contents = contents.to_owned();
|
let mut contents = contents.to_owned();
|
||||||
match length {
|
match length {
|
||||||
7 => {
|
7 => {
|
||||||
@@ -129,7 +129,7 @@ mod EAN8WriterTestCase {
|
|||||||
fn testEncode() {
|
fn testEncode() {
|
||||||
let testStr =
|
let testStr =
|
||||||
"0000001010001011010111101111010110111010101001110111001010001001011100101000000";
|
"0000001010001011010111101111010110111010101001110111001010001001011100101000000";
|
||||||
let result = EAN8Writer::default()
|
let result = EAN8Writer
|
||||||
.encode(
|
.encode(
|
||||||
"96385074",
|
"96385074",
|
||||||
&BarcodeFormat::EAN_8,
|
&BarcodeFormat::EAN_8,
|
||||||
@@ -144,7 +144,7 @@ mod EAN8WriterTestCase {
|
|||||||
fn testAddChecksumAndEncode() {
|
fn testAddChecksumAndEncode() {
|
||||||
let testStr =
|
let testStr =
|
||||||
"0000001010001011010111101111010110111010101001110111001010001001011100101000000";
|
"0000001010001011010111101111010110111010101001110111001010001001011100101000000";
|
||||||
let result = EAN8Writer::default()
|
let result = EAN8Writer
|
||||||
.encode(
|
.encode(
|
||||||
"9638507",
|
"9638507",
|
||||||
&BarcodeFormat::EAN_8,
|
&BarcodeFormat::EAN_8,
|
||||||
@@ -158,7 +158,7 @@ mod EAN8WriterTestCase {
|
|||||||
#[test]
|
#[test]
|
||||||
#[should_panic]
|
#[should_panic]
|
||||||
fn testEncodeIllegalCharacters() {
|
fn testEncodeIllegalCharacters() {
|
||||||
EAN8Writer::default()
|
EAN8Writer
|
||||||
.encode("96385abc", &BarcodeFormat::EAN_8, 0, 0)
|
.encode("96385abc", &BarcodeFormat::EAN_8, 0, 0)
|
||||||
.expect("ok");
|
.expect("ok");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -119,7 +119,7 @@ mod ITFWriterTestCase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn doTest(input: &str, expected: &str) {
|
fn doTest(input: &str, expected: &str) {
|
||||||
let result = ITFWriter::default()
|
let result = ITFWriter
|
||||||
.encode(input, &BarcodeFormat::ITF, 0, 0)
|
.encode(input, &BarcodeFormat::ITF, 0, 0)
|
||||||
.expect("encode");
|
.expect("encode");
|
||||||
assert_eq!(expected, bit_matrix_test_case::matrix_to_string(&result));
|
assert_eq!(expected, bit_matrix_test_case::matrix_to_string(&result));
|
||||||
@@ -129,7 +129,7 @@ mod ITFWriterTestCase {
|
|||||||
#[test]
|
#[test]
|
||||||
#[should_panic]
|
#[should_panic]
|
||||||
fn testEncodeIllegalCharacters() {
|
fn testEncodeIllegalCharacters() {
|
||||||
ITFWriter::default()
|
ITFWriter
|
||||||
.encode("00123456789abc", &BarcodeFormat::ITF, 0, 0)
|
.encode("00123456789abc", &BarcodeFormat::ITF, 0, 0)
|
||||||
.expect("should fail");
|
.expect("should fail");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -80,7 +80,7 @@ impl OneDReader for MultiFormatOneDReader {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if possible_formats.contains(&BarcodeFormat::CODE_128) {
|
if possible_formats.contains(&BarcodeFormat::CODE_128) {
|
||||||
if let Ok(res) = Code128Reader::default().decode_row(row_number, row, hints) {
|
if let Ok(res) = Code128Reader.decode_row(row_number, row, hints) {
|
||||||
return Ok(res);
|
return Ok(res);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -121,7 +121,7 @@ impl OneDReader for MultiFormatOneDReader {
|
|||||||
if let Ok(res) = Code93Reader::default().decode_row(row_number, row, hints) {
|
if let Ok(res) = Code93Reader::default().decode_row(row_number, row, hints) {
|
||||||
return Ok(res);
|
return Ok(res);
|
||||||
}
|
}
|
||||||
if let Ok(res) = Code128Reader::default().decode_row(row_number, row, hints) {
|
if let Ok(res) = Code128Reader.decode_row(row_number, row, hints) {
|
||||||
return Ok(res);
|
return Ok(res);
|
||||||
}
|
}
|
||||||
if let Ok(res) = ITFReader::default().decode_row(row_number, row, hints) {
|
if let Ok(res) = ITFReader::default().decode_row(row_number, row, hints) {
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ impl OneDReader for MultiFormatUPCEANReader {
|
|||||||
if !possible_formats.is_empty() {
|
if !possible_formats.is_empty() {
|
||||||
if possible_formats.contains(&BarcodeFormat::EAN_13) {
|
if possible_formats.contains(&BarcodeFormat::EAN_13) {
|
||||||
if let Ok(res) = self.try_decode_function(
|
if let Ok(res) = self.try_decode_function(
|
||||||
&EAN13Reader::default(),
|
&EAN13Reader,
|
||||||
rowNumber,
|
rowNumber,
|
||||||
row,
|
row,
|
||||||
hints,
|
hints,
|
||||||
@@ -76,7 +76,7 @@ impl OneDReader for MultiFormatUPCEANReader {
|
|||||||
}
|
}
|
||||||
if possible_formats.contains(&BarcodeFormat::EAN_8) {
|
if possible_formats.contains(&BarcodeFormat::EAN_8) {
|
||||||
if let Ok(res) = self.try_decode_function(
|
if let Ok(res) = self.try_decode_function(
|
||||||
&EAN8Reader::default(),
|
&EAN8Reader,
|
||||||
rowNumber,
|
rowNumber,
|
||||||
row,
|
row,
|
||||||
hints,
|
hints,
|
||||||
@@ -87,7 +87,7 @@ impl OneDReader for MultiFormatUPCEANReader {
|
|||||||
}
|
}
|
||||||
if possible_formats.contains(&BarcodeFormat::UPC_E) {
|
if possible_formats.contains(&BarcodeFormat::UPC_E) {
|
||||||
if let Ok(res) = self.try_decode_function(
|
if let Ok(res) = self.try_decode_function(
|
||||||
&UPCEReader::default(),
|
&UPCEReader,
|
||||||
rowNumber,
|
rowNumber,
|
||||||
row,
|
row,
|
||||||
hints,
|
hints,
|
||||||
@@ -97,31 +97,19 @@ impl OneDReader for MultiFormatUPCEANReader {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if let Ok(res) = self.try_decode_function(
|
if let Ok(res) =
|
||||||
&EAN13Reader::default(),
|
self.try_decode_function(&EAN13Reader, rowNumber, row, hints, &start_guard_pattern)
|
||||||
rowNumber,
|
{
|
||||||
row,
|
|
||||||
hints,
|
|
||||||
&start_guard_pattern,
|
|
||||||
) {
|
|
||||||
return Ok(res);
|
return Ok(res);
|
||||||
}
|
}
|
||||||
if let Ok(res) = self.try_decode_function(
|
if let Ok(res) =
|
||||||
&EAN8Reader::default(),
|
self.try_decode_function(&EAN8Reader, rowNumber, row, hints, &start_guard_pattern)
|
||||||
rowNumber,
|
{
|
||||||
row,
|
|
||||||
hints,
|
|
||||||
&start_guard_pattern,
|
|
||||||
) {
|
|
||||||
return Ok(res);
|
return Ok(res);
|
||||||
}
|
}
|
||||||
if let Ok(res) = self.try_decode_function(
|
if let Ok(res) =
|
||||||
&UPCEReader::default(),
|
self.try_decode_function(&UPCEReader, rowNumber, row, hints, &start_guard_pattern)
|
||||||
rowNumber,
|
{
|
||||||
row,
|
|
||||||
hints,
|
|
||||||
&start_guard_pattern,
|
|
||||||
) {
|
|
||||||
return Ok(res);
|
return Ok(res);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ impl OneDimensionalCodeWriter for UPCEWriter {
|
|||||||
fn encode_oned(&self, contents: &str) -> Result<Vec<bool>> {
|
fn encode_oned(&self, contents: &str) -> Result<Vec<bool>> {
|
||||||
let length = contents.chars().count();
|
let length = contents.chars().count();
|
||||||
let mut contents = contents.to_owned();
|
let mut contents = contents.to_owned();
|
||||||
let reader = UPCEReader::default();
|
let reader = UPCEReader;
|
||||||
match length {
|
match length {
|
||||||
7 => {
|
7 => {
|
||||||
// No check digit present, calculate it and add it
|
// No check digit present, calculate it and add it
|
||||||
@@ -161,7 +161,7 @@ mod UPCEWriterTestCase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn doTest(content: &str, encoding: &str) {
|
fn doTest(content: &str, encoding: &str) {
|
||||||
let result = UPCEWriter::default()
|
let result = UPCEWriter
|
||||||
.encode(
|
.encode(
|
||||||
content,
|
content,
|
||||||
&BarcodeFormat::UPC_E,
|
&BarcodeFormat::UPC_E,
|
||||||
@@ -175,7 +175,7 @@ mod UPCEWriterTestCase {
|
|||||||
#[test]
|
#[test]
|
||||||
#[should_panic]
|
#[should_panic]
|
||||||
fn testEncodeIllegalCharacters() {
|
fn testEncodeIllegalCharacters() {
|
||||||
UPCEWriter::default()
|
UPCEWriter
|
||||||
.encode("05096abc", &BarcodeFormat::UPC_E, 0, 0)
|
.encode("05096abc", &BarcodeFormat::UPC_E, 0, 0)
|
||||||
.expect("ok");
|
.expect("ok");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -79,7 +79,7 @@ impl MultipleBarcodeReader for PDF417Reader {
|
|||||||
|
|
||||||
impl PDF417Reader {
|
impl PDF417Reader {
|
||||||
pub fn new() -> Self {
|
pub fn new() -> Self {
|
||||||
Self::default()
|
Self
|
||||||
}
|
}
|
||||||
|
|
||||||
fn decode<B: Binarizer>(
|
fn decode<B: Binarizer>(
|
||||||
|
|||||||
@@ -226,7 +226,7 @@ impl PDF417Writer {
|
|||||||
temp
|
temp
|
||||||
}
|
}
|
||||||
pub fn new() -> Self {
|
pub fn new() -> Self {
|
||||||
Self::default()
|
Self
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -766,7 +766,7 @@ pub fn SampleQR(image: &BitMatrix, fp: &FinderPatternSet) -> Result<QRCodeDetect
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
let grid_sampler = DefaultGridSampler::default();
|
let grid_sampler = DefaultGridSampler;
|
||||||
let (sampled, rp) =
|
let (sampled, rp) =
|
||||||
grid_sampler.sample_grid(image, dimension as u32, dimension as u32, &rois)?;
|
grid_sampler.sample_grid(image, dimension as u32, dimension as u32, &rois)?;
|
||||||
let result = QRCodeDetectorResult::new(sampled, rp.to_vec());
|
let result = QRCodeDetectorResult::new(sampled, rp.to_vec());
|
||||||
@@ -775,7 +775,7 @@ pub fn SampleQR(image: &BitMatrix, fp: &FinderPatternSet) -> Result<QRCodeDetect
|
|||||||
// #endif
|
// #endif
|
||||||
}
|
}
|
||||||
|
|
||||||
let grid_sampler = DefaultGridSampler::default();
|
let grid_sampler = DefaultGridSampler;
|
||||||
let (sampled, rps) = grid_sampler.sample_grid(
|
let (sampled, rps) = grid_sampler.sample_grid(
|
||||||
image,
|
image,
|
||||||
dimension as u32,
|
dimension as u32,
|
||||||
@@ -1050,7 +1050,7 @@ pub fn SampleMQR(image: &BitMatrix, fp: ConcentricPattern) -> Result<QRCodeDetec
|
|||||||
return Err(Exceptions::NOT_FOUND);
|
return Err(Exceptions::NOT_FOUND);
|
||||||
}
|
}
|
||||||
|
|
||||||
let grid_sampler = DefaultGridSampler::default();
|
let grid_sampler = DefaultGridSampler;
|
||||||
let (sample, rps) = grid_sampler.sample_grid(
|
let (sample, rps) = grid_sampler.sample_grid(
|
||||||
image,
|
image,
|
||||||
dim,
|
dim,
|
||||||
|
|||||||
@@ -217,7 +217,7 @@ impl<'a> Detector<'_> {
|
|||||||
transform: PerspectiveTransform,
|
transform: PerspectiveTransform,
|
||||||
dimension: u32,
|
dimension: u32,
|
||||||
) -> Result<BitMatrix> {
|
) -> Result<BitMatrix> {
|
||||||
let sampler = DefaultGridSampler::default();
|
let sampler = DefaultGridSampler;
|
||||||
let (res, _) = sampler.sample_grid(
|
let (res, _) = sampler.sample_grid(
|
||||||
image,
|
image,
|
||||||
dimension,
|
dimension,
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ mod common;
|
|||||||
fn qrcode_black_box1_test_case() {
|
fn qrcode_black_box1_test_case() {
|
||||||
let mut tester = common::AbstractBlackBoxTestCase::new(
|
let mut tester = common::AbstractBlackBoxTestCase::new(
|
||||||
"test_resources/blackbox/qrcode-1",
|
"test_resources/blackbox/qrcode-1",
|
||||||
QrReader::default(),
|
QrReader,
|
||||||
rxing::BarcodeFormat::QR_CODE,
|
rxing::BarcodeFormat::QR_CODE,
|
||||||
);
|
);
|
||||||
// super("src/test/resources/blackbox/qrcode-1", new MultiFormatReader(), BarcodeFormat.QR_CODE);
|
// super("src/test/resources/blackbox/qrcode-1", new MultiFormatReader(), BarcodeFormat.QR_CODE);
|
||||||
@@ -68,7 +68,7 @@ fn qrcode_black_box1_test_case() {
|
|||||||
fn qrcode_black_box3_test_case() {
|
fn qrcode_black_box3_test_case() {
|
||||||
let mut tester = common::AbstractBlackBoxTestCase::new(
|
let mut tester = common::AbstractBlackBoxTestCase::new(
|
||||||
"test_resources/blackbox/qrcode-3",
|
"test_resources/blackbox/qrcode-3",
|
||||||
QrReader::default(),
|
QrReader,
|
||||||
BarcodeFormat::QR_CODE,
|
BarcodeFormat::QR_CODE,
|
||||||
);
|
);
|
||||||
tester.add_test(38, 38, 0.0);
|
tester.add_test(38, 38, 0.0);
|
||||||
@@ -89,7 +89,7 @@ fn qrcode_black_box3_test_case() {
|
|||||||
fn qrcode_black_box4_test_case() {
|
fn qrcode_black_box4_test_case() {
|
||||||
let mut tester = common::AbstractBlackBoxTestCase::new(
|
let mut tester = common::AbstractBlackBoxTestCase::new(
|
||||||
"test_resources/blackbox/qrcode-4",
|
"test_resources/blackbox/qrcode-4",
|
||||||
QrReader::default(),
|
QrReader,
|
||||||
// QRCodeReader::new(),
|
// QRCodeReader::new(),
|
||||||
BarcodeFormat::QR_CODE,
|
BarcodeFormat::QR_CODE,
|
||||||
);
|
);
|
||||||
@@ -113,7 +113,7 @@ fn qrcode_black_box4_test_case() {
|
|||||||
fn qrcode_black_box5_test_case() {
|
fn qrcode_black_box5_test_case() {
|
||||||
let mut tester = common::AbstractBlackBoxTestCase::new(
|
let mut tester = common::AbstractBlackBoxTestCase::new(
|
||||||
"test_resources/blackbox/qrcode-5",
|
"test_resources/blackbox/qrcode-5",
|
||||||
QrReader::default(),
|
QrReader,
|
||||||
BarcodeFormat::QR_CODE,
|
BarcodeFormat::QR_CODE,
|
||||||
);
|
);
|
||||||
tester.add_test(16, 16, 0.0);
|
tester.add_test(16, 16, 0.0);
|
||||||
@@ -133,7 +133,7 @@ fn qrcode_black_box5_test_case() {
|
|||||||
fn qrcode_black_box6_test_case() {
|
fn qrcode_black_box6_test_case() {
|
||||||
let mut tester = common::AbstractBlackBoxTestCase::new(
|
let mut tester = common::AbstractBlackBoxTestCase::new(
|
||||||
"test_resources/blackbox/qrcode-6",
|
"test_resources/blackbox/qrcode-6",
|
||||||
QrReader::default(),
|
QrReader,
|
||||||
BarcodeFormat::QR_CODE,
|
BarcodeFormat::QR_CODE,
|
||||||
);
|
);
|
||||||
tester.add_test(15, 15, 0.0);
|
tester.add_test(15, 15, 0.0);
|
||||||
@@ -148,7 +148,7 @@ fn qrcode_black_box6_test_case() {
|
|||||||
fn mqr_black_box_test_case() {
|
fn mqr_black_box_test_case() {
|
||||||
let mut tester = common::AbstractBlackBoxTestCase::new(
|
let mut tester = common::AbstractBlackBoxTestCase::new(
|
||||||
"test_resources/blackbox/cpp/microqrcode-1",
|
"test_resources/blackbox/cpp/microqrcode-1",
|
||||||
QrReader::default(),
|
QrReader,
|
||||||
BarcodeFormat::MICRO_QR_CODE,
|
BarcodeFormat::MICRO_QR_CODE,
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -173,7 +173,7 @@ fn mqr_black_box_test_case() {
|
|||||||
fn cpp_qrcode_black_box1_test_case() {
|
fn cpp_qrcode_black_box1_test_case() {
|
||||||
let mut tester = common::AbstractBlackBoxTestCase::new(
|
let mut tester = common::AbstractBlackBoxTestCase::new(
|
||||||
"test_resources/blackbox/cpp/qrcode-1",
|
"test_resources/blackbox/cpp/qrcode-1",
|
||||||
QrReader::default(),
|
QrReader,
|
||||||
rxing::BarcodeFormat::QR_CODE,
|
rxing::BarcodeFormat::QR_CODE,
|
||||||
);
|
);
|
||||||
// super("src/test/resources/blackbox/qrcode-1", new MultiFormatReader(), BarcodeFormat.QR_CODE);
|
// super("src/test/resources/blackbox/qrcode-1", new MultiFormatReader(), BarcodeFormat.QR_CODE);
|
||||||
@@ -221,7 +221,7 @@ fn cpp_qrcode_black_box2_test_case() {
|
|||||||
fn cpp_qrcode_black_box3_test_case() {
|
fn cpp_qrcode_black_box3_test_case() {
|
||||||
let mut tester = common::AbstractBlackBoxTestCase::new(
|
let mut tester = common::AbstractBlackBoxTestCase::new(
|
||||||
"test_resources/blackbox/cpp/qrcode-3",
|
"test_resources/blackbox/cpp/qrcode-3",
|
||||||
QrReader::default(),
|
QrReader,
|
||||||
BarcodeFormat::QR_CODE,
|
BarcodeFormat::QR_CODE,
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -243,7 +243,7 @@ fn cpp_qrcode_black_box3_test_case() {
|
|||||||
fn cpp_qrcode_black_box4_test_case() {
|
fn cpp_qrcode_black_box4_test_case() {
|
||||||
let mut tester = common::AbstractBlackBoxTestCase::new(
|
let mut tester = common::AbstractBlackBoxTestCase::new(
|
||||||
"test_resources/blackbox/cpp/qrcode-4",
|
"test_resources/blackbox/cpp/qrcode-4",
|
||||||
QrReader::default(),
|
QrReader,
|
||||||
// QRCodeReader::new(),
|
// QRCodeReader::new(),
|
||||||
BarcodeFormat::QR_CODE,
|
BarcodeFormat::QR_CODE,
|
||||||
);
|
);
|
||||||
@@ -267,7 +267,7 @@ fn cpp_qrcode_black_box4_test_case() {
|
|||||||
fn cpp_qrcode_black_box5_test_case() {
|
fn cpp_qrcode_black_box5_test_case() {
|
||||||
let mut tester = common::AbstractBlackBoxTestCase::new(
|
let mut tester = common::AbstractBlackBoxTestCase::new(
|
||||||
"test_resources/blackbox/cpp/qrcode-5",
|
"test_resources/blackbox/cpp/qrcode-5",
|
||||||
QrReader::default(),
|
QrReader,
|
||||||
BarcodeFormat::QR_CODE,
|
BarcodeFormat::QR_CODE,
|
||||||
);
|
);
|
||||||
tester.add_test(16, 16, 0.0);
|
tester.add_test(16, 16, 0.0);
|
||||||
@@ -287,7 +287,7 @@ fn cpp_qrcode_black_box5_test_case() {
|
|||||||
fn cpp_qrcode_black_box6_test_case() {
|
fn cpp_qrcode_black_box6_test_case() {
|
||||||
let mut tester = common::AbstractBlackBoxTestCase::new(
|
let mut tester = common::AbstractBlackBoxTestCase::new(
|
||||||
"test_resources/blackbox/cpp/qrcode-6",
|
"test_resources/blackbox/cpp/qrcode-6",
|
||||||
QrReader::default(),
|
QrReader,
|
||||||
BarcodeFormat::QR_CODE,
|
BarcodeFormat::QR_CODE,
|
||||||
);
|
);
|
||||||
tester.add_test(15, 15, 0.0);
|
tester.add_test(15, 15, 0.0);
|
||||||
@@ -302,7 +302,7 @@ fn cpp_qrcode_black_box6_test_case() {
|
|||||||
fn cpp_qrcode_black_box7_test_case() {
|
fn cpp_qrcode_black_box7_test_case() {
|
||||||
let mut tester = common::MultiImageSpanAbstractBlackBoxTestCase::new(
|
let mut tester = common::MultiImageSpanAbstractBlackBoxTestCase::new(
|
||||||
"test_resources/blackbox/cpp/qrcode-7",
|
"test_resources/blackbox/cpp/qrcode-7",
|
||||||
QrReader::default(),
|
QrReader,
|
||||||
rxing::BarcodeFormat::QR_CODE,
|
rxing::BarcodeFormat::QR_CODE,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ use rxing::pdf417::PDF417Reader;
|
|||||||
fn pdf417_black_box4_test_case() {
|
fn pdf417_black_box4_test_case() {
|
||||||
let mut tester = common::MultiImageSpanAbstractBlackBoxTestCase::new(
|
let mut tester = common::MultiImageSpanAbstractBlackBoxTestCase::new(
|
||||||
"test_resources/blackbox/pdf417-4",
|
"test_resources/blackbox/pdf417-4",
|
||||||
PDF417Reader::default(),
|
PDF417Reader,
|
||||||
rxing::BarcodeFormat::PDF_417,
|
rxing::BarcodeFormat::PDF_417,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user