// Zint.hpp // // Copyright (C) 2017-2026 Jaye Evins // // This file is part of gLabels-qt. // // gLabels-qt is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // gLabels-qt is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with gLabels-qt. If not, see . // #ifndef barcode_Zint_hpp #define barcode_Zint_hpp #if HAVE_ZINT #include "glbarcode/Barcode1dBase.hpp" namespace glabels::barcode::Zint { /** * Zint::Base base class for all Zint barcodes * * Implements glbarcode::Barcode1dBase. */ class Base : public glbarcode::Barcode1dBase { protected: int symbology; int option_2; Base(); bool validate( const std::string& rawData ) override; void vectorize( const std::string& encodedData, const std::string& displayText, const std::string& cookedData, double& w, double& h ) override; }; /** * AusP Barcode */ class AusP : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * AusRP Barcode */ class AusRP : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * AusRT Barcode */ class AusRT : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * AusRD Barcode */ class AusRD : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Aztec Barcode */ class Aztec : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Azrun Barcode */ class Azrun : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Channel Barcode */ class Channel : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Cbr Barcode */ class Cbr : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Codeblock-F Barcode */ class Cblockf : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Code1 Barcode */ class Code1 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Code11 Barcode */ class Code11 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * C16k Barcode */ class C16k : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * C25m Barcode */ class C25m : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * C25i Barcode */ class C25i : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Code 2 of 5 Industrial Barcode */ class C25ind : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * C25dl Barcode */ class C25dl : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Code32 Barcode */ class Code32 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Code39 Barcode */ class Code39 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Code39e Barcode */ class Code39e : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Code49 Barcode */ class Code49 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Code93 Barcode */ class Code93 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Code128 Barcode */ class Code128 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Code128b Barcode */ class Code128b : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Daft Barcode */ class Daft : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Dmtx Barcode */ class Dmtx : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Dpl Barcode */ class Dpl : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Dpi Barcode */ class Dpi : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * DotCode Barcode */ class Dotcode : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * DPD Code Barcode */ class Dpd : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Kix Barcode */ class Kix : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Ean Barcode */ class Ean : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * EAN-14 Barcode */ class Ean14 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Facing Identification Mark Barcode */ class Fim : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Flattermarken Barcode */ class Flat : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Han Xin Barcode */ class Hanxin : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Hibc128 Barcode */ class Hibc128 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Hibc39 Barcode */ class Hibc39 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Hibcdm Barcode */ class Hibcdm : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Hibcqr Barcode */ class Hibcqr : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Hibcpdf Barcode */ class Hibcpdf : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Hibcmpdf Barcode */ class Hibcmpdf : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * HIBC Codablock-F Barcode */ class Hibcblkf : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Hibcaz Barcode */ class Hibcaz : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * I25 Barcode */ class I25 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Isbn Barcode */ class Isbn : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Itf14 Barcode */ class Itf14 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Gmtx Barcode */ class Gmtx : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Gs1128 Barcode */ class Gs1128 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Logm Barcode */ class Logm : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Rss14 Barcode */ class Rss14 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Rssltd Barcode */ class Rssltd : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Rssexp Barcode */ class Rssexp : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Rsss Barcode */ class Rsss : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Rssso Barcode */ class Rssso : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Rssse Barcode */ class Rssse : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Pharma Barcode */ class Pharma : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Pharma2 Barcode */ class Pharma2 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Pzn Barcode */ class Pzn : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Tele Barcode */ class Tele : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Telex Barcode */ class Telex : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Japan Barcode */ class Japan : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Korea Barcode */ class Korea : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Maxi Barcode */ class Maxi : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Mpdf Barcode */ class Mpdf : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Msi Barcode */ class Msi : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Mqr Barcode */ class Mqr : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Nve Barcode */ class Nve : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Plan Barcode */ class Plan : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Postnet Barcode */ class Postnet : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * BC412 (SEMI T1-95) Barcode */ class Bc412 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * CEPNet Barcode */ class Cepnet : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Pdf Barcode */ class Pdf : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Pdft Barcode */ class Pdft : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Qr Barcode */ class Qr : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * rMQR Barcode */ class Rmqr : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Rm4 Barcode */ class Rm4 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Royal Mail 4-State Mailmark Barcode */ class Rm4sm : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Royal Mail 2-D Mailmark Barcode */ class Rm2dm : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * UpcA Barcode */ class UpcA : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * UpcE Barcode */ class UpcE : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * UPU S10 Barcode */ class UpuS10 : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Usps Barcode */ class Usps : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Pls Barcode */ class Pls : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; /** * Vehicle Identification Number Barcode */ class Vin : public Base { public: static Barcode* create(); protected: std::string encode( const std::string& cookedData ) override; }; } #endif // HAVE_ZINT #endif // barcode_Zint_hpp