1c902230fe
* Bulk replaced tabs with spaces * Bulk removed trailing whitespace from lines * Replaced c-style comments with c++-style comments in file banners * Replace nested namespace definitions with single concise definitions (C++17), this keeps the indentation more manageable * Cleanup ordering and spacing of include directives * Bulk renaming of header file extensions from '.h' to '.hpp'. * Update CODING-STYLE.md * Update target_compile_features from cxx_std_11 to cxx_std_20. * Refresh .clang-format file. Still needs a lot of tweaking.
1155 lines
23 KiB
C++
1155 lines
23 KiB
C++
// Zint.hpp
|
|
//
|
|
// Copyright (C) 2017 Jaye Evins <evins@snaught.com>
|
|
//
|
|
// 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 <http://www.gnu.org/licenses/>.
|
|
//
|
|
|
|
#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
|