default for boxable writers

This commit is contained in:
Henry Schimke
2023-01-03 06:26:48 -06:00
parent 203befcd04
commit 7145934f84
4 changed files with 18 additions and 14 deletions

View File

@@ -28,6 +28,7 @@ use super::encoder::{encoder, AztecCode};
/**
* Renders an Aztec code as a {@link BitMatrix}.
*/
#[derive(Default)]
pub struct AztecWriter;
impl Writer for AztecWriter {

View File

@@ -37,6 +37,7 @@ use super::encoder::error_correction;
* @author dswitkin@google.com (Daniel Switkin)
* @author Guillaume Le Biller Added to zxing lib.
*/
#[derive(Default)]
pub struct DataMatrixWriter;
impl Writer for DataMatrixWriter {

View File

@@ -23,8 +23,9 @@ use crate::{
Code128Writer, Code39Writer, Code93Writer, EAN13Writer, EAN8Writer, ITFWriter, UPCAWriter,
UPCEWriter,
},
pdf417::PDF417Writer,
qrcode::QRCodeWriter,
BarcodeFormat, Exceptions, Writer, pdf417::PDF417Writer,
BarcodeFormat, Exceptions, Writer,
};
/**
@@ -55,19 +56,19 @@ impl Writer for MultiFormatWriter {
hints: &crate::EncodingHintDictionary,
) -> Result<crate::common::BitMatrix, crate::Exceptions> {
let writer: Box<dyn Writer> = match format {
BarcodeFormat::EAN_8 => Box::new(EAN8Writer::default()),
BarcodeFormat::UPC_E => Box::new(UPCEWriter::default()),
BarcodeFormat::EAN_13 => Box::new(EAN13Writer::default()),
BarcodeFormat::UPC_A => Box::new(UPCAWriter::default()),
BarcodeFormat::QR_CODE => Box::new(QRCodeWriter {}),
BarcodeFormat::CODE_39 => Box::new(Code39Writer::default()),
BarcodeFormat::CODE_93 => Box::new(Code93Writer::default()),
BarcodeFormat::CODE_128 => Box::new(Code128Writer::default()),
BarcodeFormat::ITF => Box::new(ITFWriter::default()),
BarcodeFormat::PDF_417 => Box::new(PDF417Writer::default()),
BarcodeFormat::CODABAR => Box::new(Code128Writer::default()),
BarcodeFormat::DATA_MATRIX => Box::new(DataMatrixWriter {}),
BarcodeFormat::AZTEC => Box::new(AztecWriter {}),
BarcodeFormat::EAN_8 => Box::<EAN8Writer>::default(),
BarcodeFormat::UPC_E => Box::<UPCEWriter>::default(),
BarcodeFormat::EAN_13 => Box::<EAN13Writer>::default(),
BarcodeFormat::UPC_A => Box::<UPCAWriter>::default(),
BarcodeFormat::QR_CODE => Box::<QRCodeWriter>::default(),
BarcodeFormat::CODE_39 => Box::<Code39Writer>::default(),
BarcodeFormat::CODE_93 => Box::<Code93Writer>::default(),
BarcodeFormat::CODE_128 => Box::<Code128Writer>::default(),
BarcodeFormat::ITF => Box::<ITFWriter>::default(),
BarcodeFormat::PDF_417 => Box::<PDF417Writer>::default(),
BarcodeFormat::CODABAR => Box::<Code128Writer>::default(),
BarcodeFormat::DATA_MATRIX => Box::<DataMatrixWriter>::default(),
BarcodeFormat::AZTEC => Box::<AztecWriter>::default(),
_ => {
return Err(Exceptions::IllegalArgumentException(format!(
"No encoder available for format {:?}",

View File

@@ -32,6 +32,7 @@ const QUIET_ZONE_SIZE: i32 = 4;
*
* @author dswitkin@google.com (Daniel Switkin)
*/
#[derive(Default)]
pub struct QRCodeWriter; // {
// private static final int QUIET_ZONE_SIZE = 4;