#[derive(Default)]
pub struct ZplInstructionState {
pub position: ZplInstructionPosition,
pub typeset: ZplInstructionTypeset,
pub metrics: ZplInstructionMetrics,
pub barcode_metrics: ZplInstructionMetrics,
pub attributes: ZplInstructionAttributes,
pub params: ZplInstructionParams,
pub font: ZplInstructionFont,
pub reverse: bool,
pub value: Option<String>,
pub graphic_data: Option<Vec<u8>>,
pub instruction_type: Option<ZplInstructionType>,
pub condition: Option<(String, String)>,
}
#[derive(Default)]
pub struct ZplInstructionPosition {
pub x: u32,
pub y: u32,
}
#[derive(Default)]
pub struct ZplInstructionTypeset {
pub x: u32,
pub y: u32,
}
#[derive(Default)]
pub struct ZplInstructionMetrics {
pub width: u32,
pub height: u32,
pub thickness: u32,
}
#[derive(Default)]
pub struct ZplInstructionAttributes {
pub orientation: Option<char>,
pub interpretation_line: Option<char>,
pub interpretation_above: Option<char>,
pub check_digit: Option<char>,
pub mode: Option<char>,
pub error_correction: Option<char>,
pub line_color: Option<char>,
pub custom_line_color: Option<String>,
}
#[derive(Default)]
pub struct ZplInstructionParams {
pub rounding: u32,
pub model: u32,
pub mask: u32,
pub ratio: Option<f64>,
}
#[derive(Default)]
pub struct ZplInstructionFont {
pub font_name: char,
pub orientation: Option<char>,
pub height: Option<u32>,
pub width: Option<u32>,
pub color: Option<String>,
}
#[allow(dead_code)]
pub enum ZplInstructionType {
Text,
GraphicBox,
GraphicCircle,
GraphicEllipse,
GraphicField,
Code128,
QRCode,
Code39,
CustomImage,
}