summaryrefslogtreecommitdiff
path: root/graphics/pstricks/contrib/pst-barcode/doc/pst-barcode-doc.tex
diff options
context:
space:
mode:
Diffstat (limited to 'graphics/pstricks/contrib/pst-barcode/doc/pst-barcode-doc.tex')
-rw-r--r--graphics/pstricks/contrib/pst-barcode/doc/pst-barcode-doc.tex2835
1 files changed, 2090 insertions, 745 deletions
diff --git a/graphics/pstricks/contrib/pst-barcode/doc/pst-barcode-doc.tex b/graphics/pstricks/contrib/pst-barcode/doc/pst-barcode-doc.tex
index 8388528281..6c9d4dd877 100644
--- a/graphics/pstricks/contrib/pst-barcode/doc/pst-barcode-doc.tex
+++ b/graphics/pstricks/contrib/pst-barcode/doc/pst-barcode-doc.tex
@@ -1,9 +1,11 @@
-%% $Id: pst-barcode-doc.tex 445 2017-04-19 11:13:52Z herbert $
-\section{Symbology Reference}\label{symbology-reference}
+\hypertarget{symbology-reference}{%
+\section{Symbology Reference}\label{symbology-reference}}
-\subsection{Point of Sale}\label{point-of-sale}
+\hypertarget{point-of-sale}{%
+\subsection{Point of Sale}\label{point-of-sale}}
-\hypertarget{ean-13}{\subsubsection{EAN-13}\label{ean-13}}
+\hypertarget{ean-13}{%
+\subsubsection{EAN-13}\label{ean-13}}
\textbf{EAN-13} is an extension of the \protect\hyperlink{upc-a}{UPC-A}
barcode symbology that usually carries a GTIN-13. It was designed by the
@@ -11,7 +13,8 @@ International Article Numbering Association in 1976 for identification
of retail goods at point of sale outside of the US.
Also known as: EAN, UCC-13, European Article Number, International
-Article Number, JAN, JAN-13.
+Article Number, JAN, JAN-13, IAN, WPC, SAAN, UCCET, ABAC, BCCI, ICA,
+MANA, KANC, ANA, ANC.
Variants:
@@ -47,7 +50,8 @@ Variants:
Standards: ISO/IEC 15420, BS EN 797, GS1 General Specifications.
-\paragraph{Data and Options}\label{data-and-options}
+\hypertarget{data-and-options}{%
+\paragraph{Data and Options}\label{data-and-options}}
\begin{itemize}
\tightlist
@@ -58,8 +62,8 @@ Standards: ISO/IEC 15420, BS EN 797, GS1 General Specifications.
add-on is required.
\item
If twelve digits of primary data are supplied then the check digit is
- calculated automatically. Otherwise the provided check digit must be
- correct.
+ calculated automatically. Otherwise the provided check digit will be
+ verified.
\item
The \textbf{includetext} option should normally be supplied.
\item
@@ -67,7 +71,8 @@ Standards: ISO/IEC 15420, BS EN 797, GS1 General Specifications.
guard marks.
\end{itemize}
-\paragraph{Examples}\label{examples}
+\hypertarget{examples}{%
+\paragraph{Examples}\label{examples}}
Identical symbols, input provided with and without a check digit:
@@ -95,7 +100,8 @@ Encoder: ean13
\includegraphics{images/ean13-2.eps}
-\hypertarget{ean-8}{\subsubsection{EAN-8}\label{ean-8}}
+\hypertarget{ean-8}{%
+\subsubsection{EAN-8}\label{ean-8}}
\textbf{EAN-8} is derived from the \protect\hyperlink{ean-13}{EAN-13}
barcode symbology and is designed for small packaging. It usually
@@ -127,7 +133,8 @@ Variants:
Standards: ISO/IEC 15420, BS EN 797, GS1 General Specifications.
-\paragraph{Data and Options}\label{data-and-options-1}
+\hypertarget{data-and-options-1}{%
+\paragraph{Data and Options}\label{data-and-options-1}}
\begin{itemize}
\tightlist
@@ -138,16 +145,17 @@ Standards: ISO/IEC 15420, BS EN 797, GS1 General Specifications.
add-on is required.
\item
If seven digits of primary data are supplied then the check digit is
- calculated automatically. Otherwise the provided check digit must be
- correct.
+ calculated automatically. Otherwise the provided check digit will be
+ verified.
\item
The \textbf{includetext} option should normally be supplied.
\item
- The \textbf{guardwhitespace} option enables the display of white space
+ The \textbf{guardwhitespace} option enables the display of whitespace
guard marks.
\end{itemize}
-\paragraph{Examples}\label{examples-1}
+\hypertarget{examples-1}{%
+\paragraph{Examples}\label{examples-1}}
Identical symbols, input provided with and without a check digit:
@@ -165,7 +173,7 @@ Encoder: ean8
\includegraphics{images/ean8-1.eps}
-Truncated with white space guards:
+Truncated with whitespace guards:
\begin{verbatim}
Data: 01335583
@@ -175,7 +183,8 @@ Encoder: ean8
\includegraphics{images/ean8-2.eps}
-\hypertarget{upc-a}{\subsubsection{UPC-A}\label{upc-a}}
+\hypertarget{upc-a}{%
+\subsubsection{UPC-A}\label{upc-a}}
The \textbf{UPC-A} barcode symbology is used for identification of
retail goods at point of sale inside of the US. It usually carries a
@@ -209,7 +218,8 @@ Variants:
Standards: ISO/IEC 15420, BS EN 797, GS1 General Specifications.
-\paragraph{Data and Options}\label{data-and-options-2}
+\hypertarget{data-and-options-2}{%
+\paragraph{Data and Options}\label{data-and-options-2}}
\begin{itemize}
\tightlist
@@ -224,13 +234,14 @@ Standards: ISO/IEC 15420, BS EN 797, GS1 General Specifications.
symbol.
\item
If eleven digits of primary data are supplied then the check digit is
- calculated automatically. Otherwise the provided check digit must be
- correct.
+ calculated automatically. Otherwise the provided check digit will be
+ verified.
\item
The \textbf{includetext} option should normally be supplied.
\end{itemize}
-\paragraph{Examples}\label{examples-2}
+\hypertarget{examples-2}{%
+\paragraph{Examples}\label{examples-2}}
Identical symbols, input provided with and without a check digit:
@@ -258,7 +269,8 @@ Encoder: upca
\includegraphics{images/upca-2.eps}
-\hypertarget{upc-e}{\subsubsection{UPC-E}\label{upc-e}}
+\hypertarget{upc-e}{%
+\subsubsection{UPC-E}\label{upc-e}}
\textbf{UPC-E} is a compacted form of the
\protect\hyperlink{upc-a}{UPC-A} barcode symbology that usually carries
@@ -289,7 +301,8 @@ Variants:
Standards: ISO/IEC 15420, BS EN 797, GS1 General Specifications.
-\paragraph{Data and Options}\label{data-and-options-3}
+\hypertarget{data-and-options-3}{%
+\paragraph{Data and Options}\label{data-and-options-3}}
\begin{itemize}
\tightlist
@@ -304,13 +317,14 @@ Standards: ISO/IEC 15420, BS EN 797, GS1 General Specifications.
symbol, provided that the input can be zero suppressed.
\item
If seven digits of primary data are supplied then the check digit is
- calculated automatically. Otherwise the provided check digit must be
- correct.
+ calculated automatically. Otherwise the provided check digit will be
+ verified.
\item
The \textbf{includetext} option should normally be supplied.
\end{itemize}
-\paragraph{Examples}\label{examples-3}
+\hypertarget{examples-3}{%
+\paragraph{Examples}\label{examples-3}}
Identical symbols, input provided with and without a check digit:
@@ -338,7 +352,8 @@ Encoder: upce
\includegraphics{images/upce-2.eps}
-\hypertarget{isbn}{\subsubsection{ISBN}\label{isbn}}
+\hypertarget{isbn}{%
+\subsubsection{ISBN}\label{isbn}}
An \textbf{ISBN} barcode is a variant of
\protect\hyperlink{ean-13}{EAN-13} that is used to identify books.
@@ -358,7 +373,8 @@ Variants:
Standards: ISO 2108, ISO/IEC 15420, BS EN 797, GS1 General
Specifications.
-\paragraph{Data and Options}\label{data-and-options-4}
+\hypertarget{data-and-options-4}{%
+\paragraph{Data and Options}\label{data-and-options-4}}
\begin{itemize}
\tightlist
@@ -371,11 +387,7 @@ Specifications.
be automatically upgraded to the ISBN-13 format.
\item
If the last digit of the primary data is not given then the ISBN check
- digit is calculated automatically.
-\item
- The \textbf{legacy} option prevents ISBN-10 input from being upgraded
- to ISBN-13 and will result in a symbol that is obsolete and should not
- be used at point of sale.
+ digit is calculated automatically, otherwise it will be verified.
\item
The primary data can optionally be followed by a space then two or
five digits if an \protect\hyperlink{ean-2}{EAN-2} or
@@ -383,7 +395,7 @@ Specifications.
\item
The \textbf{includetext} option should normally be supplied.
\item
- The \textbf{guardwhitespace} option enables the display of white space
+ The \textbf{guardwhitespace} option enables the display of whitespace
guard marks.
\item
The following options are also relevant to this barcode symbology:
@@ -391,7 +403,7 @@ Specifications.
\begin{itemize}
\tightlist
\item
- \textbf{isbntextfont}: Font name for text above symbol
+ \textbf{isbntextfont}: PostScript font name for text above symbol
\item
\textbf{isbntextsize}: Font size for the text above symbol, in
points
@@ -401,9 +413,14 @@ Specifications.
\item
\textbf{isbntextyoffset}: Vertical position of ISBN text, in points
\end{itemize}
+\item
+ \emph{Deprecated.} The \textbf{legacy} option prevents ISBN-10 input
+ from being upgraded to ISBN-13 and will result in a symbol that is
+ obsolete and should not be used at point of sale.
\end{itemize}
-\paragraph{Example ISBN}\label{example-isbn}
+\hypertarget{example-isbn}{%
+\paragraph{Example ISBN}\label{example-isbn}}
Identical symbols, input provided with and without an ISBN check digit:
@@ -448,7 +465,8 @@ Encoder: isbn
\includegraphics{images/isbn-3.eps}
-\paragraph{Example ISBN-10}\label{example-isbn-10}
+\hypertarget{example-isbn-10}{%
+\paragraph{Example ISBN-10}\label{example-isbn-10}}
Note that ISBN-10 is legacy format not for use at P.O.S.
@@ -468,7 +486,8 @@ Encoder: isbn
\includegraphics{images/isbn-4.eps}
-\hypertarget{ismn}{\subsubsection{ISMN}\label{ismn}}
+\hypertarget{ismn}{%
+\subsubsection{ISMN}\label{ismn}}
An \textbf{ISMN} barcode is a variant of
\protect\hyperlink{ean-13}{EAN-13} with a prefix \emph{979} that is used
@@ -487,7 +506,8 @@ Variants:
Standards: ISO 10957, ISO/IEC 15420, BS EN 797, GS1 General
Specifications.
-\paragraph{Data and Options}\label{data-and-options-5}
+\hypertarget{data-and-options-5}{%
+\paragraph{Data and Options}\label{data-and-options-5}}
\begin{itemize}
\tightlist
@@ -499,12 +519,8 @@ Specifications.
then eight or nine digits separated appropriately by dash characters
\emph{-}. This will be automatically upgraded to the ISMN-13 format.
\item
- The \textbf{legacy} option prevents ISMN-10 input from being upgraded
- to ISMN-13 and will result in a symbol that is obsolete and should not
- be used at point of sale.
-\item
If the last digit of the primary data is not given then the ISMN check
- digit is calculated automatically.
+ digit is calculated automatically, otherwise it will be verified.
\item
The primary data can optionally be followed by a space then two or
five digits if an \protect\hyperlink{ean-2}{EAN-2} or
@@ -512,7 +528,7 @@ Specifications.
\item
The \textbf{includetext} option should normally be supplied.
\item
- The \textbf{guardwhitespace} option enables the display of white space
+ The \textbf{guardwhitespace} option enables the display of whitespace
guard marks.
\item
The following options are also relevant to this barcode symbology:
@@ -520,7 +536,7 @@ Specifications.
\begin{itemize}
\tightlist
\item
- \textbf{ismntextfont}: Font name for text above symbol
+ \textbf{ismntextfont}: PostScript font name for text above symbol
\item
\textbf{ismntextsize}: Font size for the text above symbol, in
points
@@ -530,9 +546,14 @@ Specifications.
\item
\textbf{ismntextyoffset}: Vertical position of ISMN text, in points
\end{itemize}
+\item
+ \emph{Deprecated.} The \textbf{legacy} option prevents ISMN-10 input
+ from being upgraded to ISMN-13 and will result in a symbol that is
+ obsolete and should not be used at point of sale.
\end{itemize}
-\paragraph{Example ISMN}\label{example-ismn}
+\hypertarget{example-ismn}{%
+\paragraph{Example ISMN}\label{example-ismn}}
Identical symbols, input provided with and without an ISMN check digit:
@@ -567,7 +588,8 @@ Encoder: ismn
\includegraphics{images/ismn-2.eps}
-\paragraph{Example ISMN-10}\label{example-ismn-10}
+\hypertarget{example-ismn-10}{%
+\paragraph{Example ISMN-10}\label{example-ismn-10}}
Note that ISMN-10 is a legacy format not for use at P.O.S.
@@ -587,7 +609,8 @@ Encoder: ismn
\includegraphics{images/ismn-3.eps}
-\hypertarget{issn}{\subsubsection{ISSN}\label{issn}}
+\hypertarget{issn}{%
+\subsubsection{ISSN}\label{issn}}
An \textbf{ISSN} barcode is an \protect\hyperlink{ean-13}{EAN-13} with
prefix \emph{977} used to identify periodicals.
@@ -597,7 +620,8 @@ Also known as: International Standard Serial Number.
Standards: ISO 3297, ISO/IEC 15420, BS EN 797, GS1 General
Specifications.
-\paragraph{Data and Options}\label{data-and-options-6}
+\hypertarget{data-and-options-6}{%
+\paragraph{Data and Options}\label{data-and-options-6}}
\begin{itemize}
\tightlist
@@ -609,11 +633,11 @@ Specifications.
\protect\hyperlink{ean-5}{five-digit add-on} is required.
\item
If the last digit of the ISSN data is not given then the ISSN check
- digit is calculated automatically.
+ digit is calculated automatically, otherwise it will be verified.
\item
The \textbf{includetext} option should normally be supplied.
\item
- The \textbf{guardwhitespace} option enables the display of white space
+ The \textbf{guardwhitespace} option enables the display of whitespace
guard marks.
\item
The following options are also relevant to this barcode symbology:
@@ -621,7 +645,7 @@ Specifications.
\begin{itemize}
\tightlist
\item
- \textbf{issntextfont}: Font name for text above symbol
+ \textbf{issntextfont}: PostScript font name for text above symbol
\item
\textbf{issntextsize}: Font size for the text above symbol, in
points
@@ -637,7 +661,8 @@ A sequence variant is a two-digit number that usually starts at zero and
is incremented whenever the recommended retail price is amended, where
applicable.
-\paragraph{Example}\label{example}
+\hypertarget{example}{%
+\paragraph{Example}\label{example}}
Identical symbols, input provided with and without an ISSN check digit
and having sequence number \emph{00}:
@@ -674,9 +699,11 @@ Encoder: issn
\includegraphics{images/issn-2.eps}
-\subsection{Two-Dimensional}\label{two-dimensional}
+\hypertarget{two-dimensional}{%
+\subsection{Two-Dimensional}\label{two-dimensional}}
-\hypertarget{aztec-code}{\subsubsection{Aztec Code}\label{aztec-code}}
+\hypertarget{aztec-code}{%
+\subsubsection{Aztec Code}\label{aztec-code}}
\textbf{Aztec Code} is a 2D matrix-style barcode symbology. It can
encode full 256-character extended-ASCII.
@@ -692,17 +719,32 @@ Variants:
Standards: ISO/IEC 24778, ANSI/AIM BC13 - ISS Aztec Code.
-\paragraph{Data and Options}\label{data-and-options-7}
+\hypertarget{data-and-options-7}{%
+\paragraph{Data and Options}\label{data-and-options-7}}
\begin{itemize}
\tightlist
\item
- The data field can contain any extended ASCII data.
+ The data field can contain any extended ASCII data. The default
+ interpretation of data by readers is in accordance with ISO/IEC
+ 8859-1. When supported by the receiver characters from other code
+ pages can be encoded using Extended Channel Interpretation (ECI).
\item
When the \textbf{parse} option is specified, any instances of
\texttt{\^{}NNN} in the data field are replaced with their equivalent
ASCII value, useful for specifying unprintable characters.
\item
+ When the \textbf{parsefnc} option is specified, non-data function
+ characters can be specified by escape sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}FNC1}: FNC1
+ \item
+ \texttt{\^{}ECI000000} to \texttt{\^{}ECI999999}: ECI indicators
+ \end{itemize}
+\item
The \textbf{eclevel} option is used to specify the percentage of error
correction to be applied when expanding the data, by default
\texttt{23}.
@@ -721,20 +763,21 @@ Standards: ISO/IEC 24778, ANSI/AIM BC13 - ISS Aztec Code.
default the encoder will choose the most appropriate format to create
a symbol of minimal size.
\item
- \emph{Deprecated: Use \protect\hyperlink{aztec-runes}{Aztec Runes}
- instead. The \textbf{format} option can also be used to create Aztec
- Code ``runes'', using \texttt{format=rune}. In this case the rune
- symbol number should be given in the data field.}
-\item
The \textbf{readerinit} option denotes that the symbol is used for
programming the barcode reader.
\item
The \textbf{raw} option denotes that the data field is providing the
input as a pre-encoded bitstream suitable for direct low-level
encoding.
+\item
+ \emph{Deprecated: Use \protect\hyperlink{aztec-runes}{Aztec Runes}
+ instead.} The \textbf{format} option can also be used to create Aztec
+ Code "runes", using \texttt{format=rune}. In this case the rune symbol
+ number should be given in the data field.
\end{itemize}
-\paragraph{Examples}\label{examples-4}
+\hypertarget{examples-4}{%
+\paragraph{Examples}\label{examples-4}}
\begin{verbatim}
Data: This is Aztec Code
@@ -776,8 +819,8 @@ Encoder: azteccode
\includegraphics{images/aztec-4.eps}
-\hypertarget{aztec-runes}{\subsubsection{Aztec
-Runes}\label{aztec-runes}}
+\hypertarget{aztec-runes}{%
+\subsubsection{Aztec Runes}\label{aztec-runes}}
\textbf{Aztec Runes} are a set of small barcode symbols that are used
for special applications.
@@ -789,7 +832,8 @@ symbology that can encode full 256 character extended-ASCII.
Standards: ISO/IEC 24778, ANSI/AIM BC13 - ISS Aztec Code.
-\paragraph{Data and Options}\label{data-and-options-8}
+\hypertarget{data-and-options-8}{%
+\paragraph{Data and Options}\label{data-and-options-8}}
\begin{itemize}
\tightlist
@@ -797,7 +841,8 @@ Standards: ISO/IEC 24778, ANSI/AIM BC13 - ISS Aztec Code.
The data field contains the rune number \texttt{0} to \texttt{255}.
\end{itemize}
-\paragraph{Examples}\label{examples-5}
+\hypertarget{examples-5}{%
+\paragraph{Examples}\label{examples-5}}
\begin{verbatim}
Data: 25
@@ -807,85 +852,137 @@ Encoder: aztecrune
\includegraphics{images/aztec-3.eps}
-\hypertarget{data-matrix}{\subsubsection{Data
-Matrix}\label{data-matrix}}
+\hypertarget{data-matrix}{%
+\subsubsection{Data Matrix}\label{data-matrix}}
The \textbf{Data Matrix} symbology is 2D matrix-style barcode that can
encode full 256 character extended-ASCII.
-Also known as: Data Matrix ECC 200.
+Also known as: Data Matrix ECC 200, DataMatrix.
Variants:
\begin{itemize}
\tightlist
\item
+ \protect\hyperlink{data-matrix-rectangular}{Data Matrix Rectangular}
+ is a variant of Data Matrix that uses rectangular symbols.
+\item
+ \protect\hyperlink{data-matrix-rectangular-extension}{Data Matrix
+ Rectangular Extension} is a variant of Data Matrix Rectangular that
+ provides a greater range of symbol dimensions.
+\item
\protect\hyperlink{gs1-datamatrix}{GS1 DataMatrix} is a variant of
Data Matrix that should be used when encoding data that is in
\protect\hyperlink{gs1-application-identifier-standard-format}{GS1
Application Identifier standard format}.
\item
+ \protect\hyperlink{gs1-digital-link-data-matrix}{GS1 Digital Link Data
+ Matrix} is a variant of Data Matrix that should be used when encoding
+ a GS1 Digital Link URI.
+\item
\protect\hyperlink{hibc-symbols}{HIBC Data Matrix} is a variant of
Data Matrix that should be used when encoding HIBC formatted data.
+\item
+ \protect\hyperlink{mailmark}{Royal Mail Mailmark} is a variant of Data
+ Matrix that is used by the Royal Mail postal service on letters and
+ other small mailpieces.
\end{itemize}
Standards: ISO/IEC 16022, ANSI/AIM BC11 - ISS Data Matrix.
-\paragraph{Data and Options}\label{data-and-options-9}
+\hypertarget{data-and-options-9}{%
+\paragraph{Data and Options}\label{data-and-options-9}}
\begin{itemize}
\tightlist
\item
- The data field can contain any extended ASCII data.
+ The data field can contain any extended ASCII data. The default
+ interpretation of data by readers is in accordance with ISO/IEC
+ 8859-1. When supported by the receiver characters from other code
+ pages can be encoded using Extended Channel Interpretation (ECI).
\item
When the \textbf{parse} option is specified, any instances of
\texttt{\^{}NNN} in the data field are replaced with their equivalent
ASCII value. This is useful for specifying unprintable characters.
\item
When the \textbf{parsefnc} option is specified, non-data function
- characters can be specified by \texttt{\^{}FNC1}, \texttt{\^{}PROG},
- \texttt{\^{}MAC5}, \texttt{\^{}MAC6}.
+ characters can be specified by escape sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}FNC1}: FNC1. \emph{Recommendation: Use
+ \protect\hyperlink{gs1-datamatrix}{GS1 DataMatrix} for encoding GS1
+ AI syntax data.}
+ \item
+ \texttt{\^{}PROG}: PROG - Reader programming
+ \item
+ \texttt{\^{}ECI000000} to \texttt{\^{}ECI999999}: ECI indicators
+ \end{itemize}
\item
- The \textbf{format} option is used to specify the shape of the symbol,
- either \texttt{square} (default) or \texttt{rectangle}.
+ Whenever the data field contains suitable input, the encoder will
+ compress ISO/IEC 15434 structured data (internally using the 05 Macro
+ and 06 Macro codewords.)
\item
- The \textbf{dmre} option enable Data Matrix Rectangular Extension with
- increases the number of rectangular symbol sizes available.
+ When the \textbf{dotty} option is specified the modules are rendered
+ as dots rather than squares. The dot radius can be adjusted using the
+ \textbf{inkspread} option.
\item
The \textbf{columns} and \textbf{rows} options are used to specify the
size of the symbol.
\item
The \textbf{version} option can also be used to specify the symbol
- size, as \texttt{version=RxC}. Valid options are:
+ size, as \texttt{version=RxC}. Valid options are \emph{10x10},
+ \emph{12x12}, \emph{14x14}, \emph{16x16}, \emph{18x18}, \emph{20x20},
+ \emph{22x22}, \emph{24x24}, \emph{26x26}, \emph{32x32}, \emph{36x36},
+ \emph{40x40}, \emph{44x44}, \emph{48x48}, \emph{52x52}, \emph{64x64},
+ \emph{72x72}, \emph{80x80}, \emph{88x88}, \emph{96x96},
+ \emph{104x104}, \emph{120x120}, \emph{132x132}, \emph{144x144}
+\item
+ If \textbf{columns}, \textbf{rows} and \textbf{version} are
+ unspecified the encoder will default to creating a symbol of the
+ specified \textbf{format} that is the minimum size to represent the
+ given data.
+\item
+ The \textbf{raw} option denotes that the data field is providing the
+ input as pre-encoded codewords in \texttt{\^{}NNN} format, suitable
+ for direct low-level encoding.
+\item
+ \emph{Deprecated}: The \textbf{format} option is used to specify the
+ shape of the symbol, either:
\begin{itemize}
\tightlist
\item
- With \texttt{format=square}: \emph{10x10}, \emph{12x12},
- \emph{14x14}, \emph{16x16}, \emph{18x18}, \emph{20x20},
- \emph{22x22}, \emph{24x24}, \emph{26x26}, \emph{32x32},
- \emph{36x36}, \emph{40x40}, \emph{44x44}, \emph{48x48},
- \emph{52x52}, \emph{64x64}, \emph{72x72}, \emph{80x80},
- \emph{88x88}, \emph{96x96}, \emph{104x104}, \emph{120x120},
- \emph{132x132}, \emph{144x144}
- \item
- With \texttt{format=rectangle}: \emph{8x18}, \emph{8x32},
- \emph{12x26}, \emph{12x36}, \emph{16x36}, \emph{16x48}
+ \texttt{square} (default)
\item
- With \texttt{format=rectangle} and \texttt{dmre}: \emph{8x18},
- \emph{8x32}, \emph{8x48}, \emph{8x64}, \emph{12x26}, \emph{12x36},
- \emph{12x64}, \emph{16x36}, \emph{16x48}, \emph{16x64},
- \emph{24x32}, \emph{24x36}, \emph{24x48}, \emph{24x64},
- \emph{26x32}, \emph{26x40}, \emph{26x48}, \emph{26x64}
+ \texttt{rectangle}: Use
+ \protect\hyperlink{data-matrix-rectangular}{Data Matrix Rectangular}
+ for rectangular symbols.
\end{itemize}
\item
- If \textbf{columns}, \textbf{rows} and \textbf{version} are
- unspecified the encoder will default to creating a symbol of the
- specified \textbf{format} that is the minimum size to represent the
- given data.
+ \emph{Deprecated: Use
+ \protect\hyperlink{data-matrix-rectangular-extension}{Data Matrix
+ Rectangular Extension}.} The \textbf{dmre} option enables Data Matrix
+ Rectangular Extension symbols based on the ISO/IEC standard, which
+ increases the number of rectangular symbol sizes available.
+\item
+ \emph{Deprecated: Use
+ \protect\hyperlink{data-matrix-rectangular-extension}{Data Matrix
+ Rectangular Extension} with dimdmre option.} The \textbf{dindmre}
+ option enables Data Matrix Rectangular Extension symbols based on the
+ obsolete DIN standard.
+\item
+ \emph{Deprecated: For internal use.} The \textbf{mailmark} option
+ signifies the requirement to use Mailmark-specific encoding.
\end{itemize}
-\paragraph{Examples}\label{examples-6}
+\hypertarget{examples-6}{%
+\paragraph{Examples}\label{examples-6}}
+
+Identical symbols, automatically sized, the latter showing use of the
+parse option:
\begin{verbatim}
Data: This is Data Matrix
@@ -901,6 +998,14 @@ Encoder: datamatrix
\includegraphics{images/datamatrix-1.eps}
+Identical symbols with a fixed size:
+
+\begin{verbatim}
+Data: Fixed size
+Options: version=48x48
+Encoder: datamatrix
+\end{verbatim}
+
\begin{verbatim}
Data: Fixed size
Options: rows=48 columns=48
@@ -909,6 +1014,8 @@ Encoder: datamatrix
\includegraphics{images/datamatrix-2.eps}
+A rectangular symbol with a fixed size:
+
\begin{verbatim}
Data: Rectangular
Options: format=rectangle version=16x48
@@ -917,7 +1024,230 @@ Encoder: datamatrix
\includegraphics{images/datamatrix-3.eps}
-\subsubsection{Han Xin Code}\label{han-xin-code}
+An advanced use containing "hidden data" in the padding codewords as
+used by some non-standard, "high-security" applications. The technique
+works by filling the symbol using raw codewords formed from the standard
+data immediately followed by the non-standard padding data beginning
+with \texttt{\^{}129}:
+
+\begin{verbatim}
+Data: ^066^067^068^142^052^129^161^056^206^101^251^147
+Options: version=16x16 raw
+Encoder: datamatrix
+\end{verbatim}
+
+\hypertarget{data-matrix-rectangular}{%
+\subsubsection{Data Matrix Rectangular}\label{data-matrix-rectangular}}
+
+The \textbf{Data Matrix Rectangular} symbology is a rectangular variant
+of \protect\hyperlink{data-matrix}{Data Matrix}.
+
+Variants:
+
+\begin{itemize}
+\tightlist
+\item
+ \protect\hyperlink{data-matrix}{Data Matrix} is the standard square
+ variant of the symbology.
+\item
+ \protect\hyperlink{data-matrix-rectangular-extension}{Data Matrix
+ Rectangular Extension} is a variant of Data Matrix Rectangular that
+ provides a greater range of symbol dimensions.
+\end{itemize}
+
+Standards: ISO/IEC 16022, ANSI/AIM BC11 - ISS Data Matrix.
+
+\hypertarget{data-and-options-10}{%
+\paragraph{Data and Options}\label{data-and-options-10}}
+
+\begin{itemize}
+\tightlist
+\item
+ The data field can contain any extended ASCII data. The default
+ interpretation of data by readers is in accordance with ISO/IEC
+ 8859-1. When supported by the receiver characters from other code
+ pages can be encoded using Extended Channel Interpretation (ECI).
+\item
+ When the \textbf{parse} option is specified, any instances of
+ \texttt{\^{}NNN} in the data field are replaced with their equivalent
+ ASCII value. This is useful for specifying unprintable characters.
+\item
+ When the \textbf{parsefnc} option is specified, non-data function
+ characters can be specified by escape sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}FNC1}: FNC1. \emph{Recommendation: Use
+ \protect\hyperlink{gs1-datamatrix}{GS1 DataMatrix} for encoding GS1
+ AI syntax data.}
+ \item
+ \texttt{\^{}PROG}: PROG - Reader programming
+ \item
+ \texttt{\^{}ECI000000} to \texttt{\^{}ECI999999}: ECI indicators
+ \end{itemize}
+\item
+ Whenever the data field contains suitable input, the encoder will
+ compress ISO/IEC 15434 structured data (internally using the 05 Macro
+ and 06 Macro codewords.)
+\item
+ When the \textbf{dotty} option is specified the modules are rendered
+ as dots rather than squares. The dot radius can be adjusted using the
+ \textbf{inkspread} option.
+\item
+ \emph{Deprecated: Use
+ \protect\hyperlink{data-matrix-rectangular-extension}{Data Matrix
+ Rectangular Extension}.} The \textbf{dmre} option enables Data Matrix
+ Rectangular Extension symbols based on the ISO/IEC standard, which
+ increases the number of rectangular symbol sizes available.
+\item
+ \emph{Deprecated: Standard is obsolete. Use
+ \protect\hyperlink{data-matrix-rectangular-extension}{Data Matrix
+ Rectangular Extension} with the dindmre option.} The \textbf{dindmre}
+ option enables Data Matrix Rectangular Extension symbols based on the
+ obsolete DIN standard.
+\item
+ The \textbf{columns} and \textbf{rows} options are used to specify the
+ size of the symbol.
+\item
+ The \textbf{version} option can also be used to specify the symbol
+ size, as \texttt{version=RxC}. Valid options are \emph{8x18},
+ \emph{8x32}, \emph{12x26}, \emph{12x36}, \emph{16x36}, \emph{16x48}.
+\item
+ If \textbf{columns}, \textbf{rows} and \textbf{version} are
+ unspecified the encoder will default to creating a symbol that is the
+ minimum size to represent the given data.
+\item
+ The \textbf{raw} option denotes that the data field is providing the
+ input as pre-encoded codewords in \texttt{\^{}NNN} format, suitable
+ for direct low-level encoding.
+\end{itemize}
+
+\hypertarget{examples-7}{%
+\paragraph{Examples}\label{examples-7}}
+
+A rectangular symbol with a fixed size:
+
+\begin{verbatim}
+Data: Rectangular
+Options: version=16x48
+Encoder: datamatrixrectangular
+\end{verbatim}
+
+\includegraphics{images/datamatrix-3.eps}
+
+\hypertarget{data-matrix-rectangular-extension}{%
+\subsubsection{Data Matrix Rectangular
+Extension}\label{data-matrix-rectangular-extension}}
+
+The \textbf{Data Matrix Rectangular Extension} symbology is an
+enhancement to \protect\hyperlink{data-matrix-rectangular}{Data Matrix
+Rectangular} that provides a greater range of symbol dimensions.
+
+Also known as: DMRE.
+
+Variants:
+
+\begin{itemize}
+\tightlist
+\item
+ \protect\hyperlink{data-matrix}{Data Matrix} is the standard square
+ variant of the symbology.
+\item
+ \protect\hyperlink{data-matrix-rectangular}{Data Matrix Rectangular}
+ is the original rectangular variant of Data Matrix that provides a
+ limited range of symbol dimensions.
+\end{itemize}
+
+Standards: ISO/IEC 21471.
+
+\hypertarget{data-and-options-11}{%
+\paragraph{Data and Options}\label{data-and-options-11}}
+
+\begin{itemize}
+\tightlist
+\item
+ The data field can contain any extended ASCII data. The default
+ interpretation of data by readers is in accordance with ISO/IEC
+ 8859-1. When supported by the receiver characters from other code
+ pages can be encoded using Extended Channel Interpretation (ECI).
+\item
+ When the \textbf{parse} option is specified, any instances of
+ \texttt{\^{}NNN} in the data field are replaced with their equivalent
+ ASCII value. This is useful for specifying unprintable characters.
+\item
+ When the \textbf{parsefnc} option is specified, non-data function
+ characters can be specified by escape sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}FNC1}: FNC1
+ \item
+ \texttt{\^{}PROG}: PROG - Reader programming
+ \item
+ \texttt{\^{}ECI000000} to \texttt{\^{}ECI999999}: ECI indicators
+ \end{itemize}
+\item
+ Whenever the data field contains suitable input, the encoder will
+ compress ISO/IEC 15434 structured data (internally using the 05 Macro
+ and 06 Macro codewords.)
+\item
+ When the \textbf{dotty} option is specified the modules are rendered
+ as dots rather than squares. The dot radius can be adjusted using the
+ \textbf{inkspread} option.
+\item
+ The \textbf{columns} and \textbf{rows} options are used to specify the
+ size of the symbol.
+\item
+ The \textbf{version} option can also be used to specify the symbol
+ size, as \texttt{version=RxC}. Valid options are \emph{8x18},
+ \emph{8x32}, \emph{8x48}, \emph{8x64}, \emph{8x80}, \emph{8x96},
+ \emph{8x120}, \emph{8x144}, \emph{12x26}, \emph{12x36}, \emph{12x64},
+ \emph{12x88}, \emph{16x36}, \emph{16x48}, \emph{16x64}, \emph{20x36},
+ \emph{20x44}, \emph{20x64}, \emph{22x48}, \emph{24x48}, \emph{24x64},
+ \emph{26x40}, \emph{26x48}, \emph{26x64}.
+\item
+ If \textbf{columns}, \textbf{rows} and \textbf{version} are
+ unspecified the encoder will default to creating a symbol that is the
+ minimum size to represent the given data.
+\item
+ The \textbf{raw} option denotes that the data field is providing the
+ input as pre-encoded codewords in \texttt{\^{}NNN} format, suitable
+ for direct low-level encoding.
+\item
+ \emph{Deprecated: Standard is obsolete.} The \textbf{dindmre} option
+ select Data Matrix Rectangular Extension symbols whose dimensions are
+ based on the obsolete DIN standard, rather than the current ISO
+ standard.
+
+ \begin{itemize}
+ \tightlist
+ \item
+ With \texttt{dindmre} the valid version \textbf{options} are
+ \emph{8x18}, \emph{8x32}, \emph{8x48}, \emph{8x64}, \emph{12x26},
+ \emph{12x36}, \emph{12x64}, \emph{16x36}, \emph{16x48},
+ \emph{16x64}, \emph{24x32}, \emph{24x36}, \emph{24x48},
+ \emph{24x64}, \emph{26x32}, \emph{26x40}, \emph{26x48},
+ \emph{26x64}.
+ \end{itemize}
+\end{itemize}
+
+\hypertarget{examples-8}{%
+\paragraph{Examples}\label{examples-8}}
+
+A DMRE symbol with a fixed size:
+
+\begin{verbatim}
+Data: 1234
+Options: version=8x80
+Encoder: datamatrixrectangularextension
+\end{verbatim}
+
+\includegraphics{images/datamatrix-4.eps}
+
+\hypertarget{han-xin-code}{%
+\subsubsection{Han Xin Code}\label{han-xin-code}}
The \textbf{Han Xin Code} symbology is a 2D matrix-style barcode
symbology that can encode full 256 character extended-ASCII.
@@ -926,12 +1256,15 @@ Also known as: Chinese Sensible.
Standards: GB/T 21049-2007.
-\paragraph{Data and Options}\label{data-and-options-10}
+\hypertarget{data-and-options-12}{%
+\paragraph{Data and Options}\label{data-and-options-12}}
\begin{itemize}
\tightlist
\item
- The data field can contain any extended ASCII data.
+ The data field can contain any extended ASCII data. The default
+ interpretation of data by readers is in accordance with ISO/IEC
+ 8859-1.
\item
When the \textbf{parse} option is specified, any instances of
\texttt{\^{}NNN} in the data field are replaced with their equivalent
@@ -960,7 +1293,8 @@ Standards: GB/T 21049-2007.
correction level.
\end{itemize}
-\paragraph{Examples}\label{examples-7}
+\hypertarget{examples-9}{%
+\paragraph{Examples}\label{examples-9}}
\begin{verbatim}
Data: Han Xin Code
@@ -970,7 +1304,8 @@ Encoder: hanxin
\includegraphics{images/hanxin-1.eps}
-\hypertarget{micropdf417}{\subsubsection{MicroPDF417}\label{micropdf417}}
+\hypertarget{micropdf417}{%
+\subsubsection{MicroPDF417}\label{micropdf417}}
The \textbf{MicroPDF417} barcode symbology is 2D stacked-linear barcode
based on \protect\hyperlink{pdf417}{PDF417} that can encode full 256
@@ -990,17 +1325,29 @@ Variants:
Standards: ISO/IEC 24728, AIM ISS - MicroPDF417.
-\paragraph{Data and Options}\label{data-and-options-11}
+\hypertarget{data-and-options-13}{%
+\paragraph{Data and Options}\label{data-and-options-13}}
\begin{itemize}
-\tightlist
\item
- The data field can contain any extended ASCII data.
+ The data field can contain any extended ASCII data. The default
+ interpretation of data by readers is in accordance with ISO/IEC
+ 8859-1. When supported by the receiver characters from other code
+ pages can be encoded using Extended Channel Interpretation (ECI).
\item
When the \textbf{parse} option is specified, any instances of
\texttt{\^{}NNN} in the data field are replaced with their equivalent
ASCII value, useful for specifying unprintable characters.
\item
+ When the \textbf{parsefnc} option is specified, non-data function
+ characters can be specified by escape sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}ECI000000} to \texttt{\^{}ECI811799}: ECI indicators
+ \end{itemize}
+\item
The \textbf{columns} and \textbf{rows} options are used to specify the
size of the symbol. Valid values are:
@@ -1027,29 +1374,34 @@ Standards: ISO/IEC 24728, AIM ISS - MicroPDF417.
input as a pre-encoded codewords in \texttt{\^{}NNN} format, suitable
for direct low-level encoding.
\item
- The \textbf{cca} option identifies this symbol as a \emph{CC-A} 2D
- component of a \protect\hyperlink{gs1-composite-symbols}{GS1
- Composite} symbol.
-\item
- The \textbf{ccb} option identifies this symbol as a \emph{CC-B} 2D
- component of a \protect\hyperlink{gs1-composite-symbols}{GS1
- Composite} symbol.
-\item
- Note: Special size rules apply when the \textbf{cca} option is given,
- in which case the \textbf{columns} and \textbf{rows} options that are
- used to specify the size of the symbol must be one of:
+ \emph{Deprecated: Internal use.} The \textbf{cca} option identifies
+ this symbol as a \emph{CC-A} 2D component of a
+ \protect\hyperlink{gs1-composite-symbols}{GS1 Composite} symbol.
\begin{itemize}
\tightlist
\item
- \emph{2x5}, \emph{2x6}, \emph{2x7}, \emph{2x8}, \emph{2x9},
- \emph{2x10}, \emph{2x12}, \emph{3x4}, \emph{3x5}, \emph{3x6},
- \emph{3x7}, \emph{3x8}, \emph{4x3}, \emph{4x4}, \emph{4x5},
- \emph{4x6}, \emph{4x7}
+ Special size rules apply when the \textbf{cca} option is given, in
+ which case the \textbf{columns} and \textbf{rows} options that are
+ used to specify the size of the symbol must be one of:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \emph{2x5}, \emph{2x6}, \emph{2x7}, \emph{2x8}, \emph{2x9},
+ \emph{2x10}, \emph{2x12}, \emph{3x4}, \emph{3x5}, \emph{3x6},
+ \emph{3x7}, \emph{3x8}, \emph{4x3}, \emph{4x4}, \emph{4x5},
+ \emph{4x6}, \emph{4x7}
+ \end{itemize}
\end{itemize}
+\item
+ \emph{Deprecated: Internal use.} The \textbf{ccb} option identifies
+ this symbol as a \emph{CC-B} 2D component of a
+ \protect\hyperlink{gs1-composite-symbols}{GS1 Composite} symbol.
\end{itemize}
-\paragraph{Examples}\label{examples-8}
+\hypertarget{examples-10}{%
+\paragraph{Examples}\label{examples-10}}
\begin{verbatim}
Data: MicroPDF417
@@ -1067,7 +1419,8 @@ Encoder: micropdf417
\includegraphics{images/micropdf417-2.eps}
-\hypertarget{pdf417}{\subsubsection{PDF417}\label{pdf417}}
+\hypertarget{pdf417}{%
+\subsubsection{PDF417}\label{pdf417}}
The \textbf{PDF417} barcode symbology is 2D stacked-linear barcode that
can encode full 256 character extended-ASCII.
@@ -1090,17 +1443,30 @@ Variants:
Standards: ISO/IEC 15438, DD ENV 12925, AIM USS - PDF417.
-\paragraph{Data and Options}\label{data-and-options-12}
+\hypertarget{data-and-options-14}{%
+\paragraph{Data and Options}\label{data-and-options-14}}
\begin{itemize}
\tightlist
\item
- The data field can contain any extended ASCII data.
+ The data field can contain any extended ASCII data. The default
+ interpretation of data by readers is in accordance with ISO/IEC
+ 8859-1. When supported by the receiver characters from other code
+ pages can be encoded using Extended Channel Interpretation (ECI).
\item
When the \textbf{parse} option is specified, any instances of
\texttt{\^{}NNN} in the data field are replaced with their equivalent
ASCII value, useful for specifying unprintable characters.
\item
+ When the \textbf{parsefnc} option is specified, non-data function
+ characters can be specified by escape sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}ECI000000} to \texttt{\^{}ECI811799}: ECI indicators.
+ \end{itemize}
+\item
The \textbf{eclevel} option is used to specify the error correction
level, from 1 to 5. The default is to choose a standard level of error
correction that is determined by the encoded data length.
@@ -1117,21 +1483,22 @@ Standards: ISO/IEC 15438, DD ENV 12925, AIM USS - PDF417.
The \textbf{rowmult} option is used to specify how tall each bar is,
with respect to the minimum module width. The default is 3.
\item
+ The \textbf{raw} option denotes that the data field is providing the
+ input as a pre-encoded codewords in \texttt{\^{}NNN} format, suitable
+ for direct low-level encoding.
+\item
\emph{Deprecated: Use \protect\hyperlink{compact-pdf417}{Compact
PDF417} instead. The \textbf{compact} option is used to create a
compact/truncated PDF417 symbol that has fewer bars per row that a
standard symbol and hence is more narrow.}
\item
- The \textbf{raw} option denotes that the data field is providing the
- input as a pre-encoded codewords in \texttt{\^{}NNN} format, suitable
- for direct low-level encoding.
-\item
- The \textbf{ccc} option identifies this symbol as a \emph{CC-C} 2D
- component of a \protect\hyperlink{gs1-composite-symbols}{GS1
- Composite} symbol.
+ \emph{Deprecated: Internal use.} The \textbf{ccc} option identifies
+ this symbol as a \emph{CC-C} 2D component of a
+ \protect\hyperlink{gs1-composite-symbols}{GS1 Composite} symbol.
\end{itemize}
-\paragraph{Examples}\label{examples-9}
+\hypertarget{examples-11}{%
+\paragraph{Examples}\label{examples-11}}
\begin{verbatim}
Data: PDF417
@@ -1165,8 +1532,8 @@ Encoder: pdf417
\includegraphics{images/pdf417-5.eps}
-\hypertarget{compact-pdf417}{\subsubsection{Compact
-PDF417}\label{compact-pdf417}}
+\hypertarget{compact-pdf417}{%
+\subsubsection{Compact PDF417}\label{compact-pdf417}}
\textbf{Compact PDF417} is a shortened form of the
\protect\hyperlink{pdf417}{PDF417} barcode that is used in applications
@@ -1191,17 +1558,30 @@ Variants:
Standards: ISO/IEC 15438, DD ENV 12925, AIM USS - PDF417.
-\paragraph{Data and Options}\label{data-and-options-13}
+\hypertarget{data-and-options-15}{%
+\paragraph{Data and Options}\label{data-and-options-15}}
\begin{itemize}
\tightlist
\item
- The data field can contain any extended ASCII data.
+ The data field can contain any extended ASCII data. The default
+ interpretation of data by readers is in accordance with ISO/IEC
+ 8859-1. When supported by the receiver characters from other code
+ pages can be encoded using Extended Channel Interpretation (ECI).
\item
When the \textbf{parse} option is specified, any instances of
\texttt{\^{}NNN} in the data field are replaced with their equivalent
ASCII value, useful for specifying unprintable characters.
\item
+ When the \textbf{parsefnc} option is specified, non-data function
+ characters can be specified by escape sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}ECI000000} to \texttt{\^{}ECI811799}: ECI indicators
+ \end{itemize}
+\item
The \textbf{eclevel} option is used to specify the error correction
level, from 1 to 5. The default is to choose a standard level of error
correction that is determined by the encoded data length.
@@ -1223,7 +1603,8 @@ Standards: ISO/IEC 15438, DD ENV 12925, AIM USS - PDF417.
for direct low-level encoding.
\end{itemize}
-\paragraph{Examples}\label{examples-10}
+\hypertarget{examples-12}{%
+\paragraph{Examples}\label{examples-12}}
\begin{verbatim}
Data: A truncated PDF417
@@ -1233,7 +1614,8 @@ Encoder: pdf417compact
\includegraphics{images/pdf417-3.eps}
-\hypertarget{qr-code}{\subsubsection{QR Code}\label{qr-code}}
+\hypertarget{qr-code}{%
+\subsubsection{QR Code}\label{qr-code}}
The \textbf{QR Code} symbology is a 2D matrix-style barcode symbology
that can encode full 256 character extended-ASCII.
@@ -1253,23 +1635,48 @@ Variants:
\protect\hyperlink{gs1-application-identifier-standard-format}{GS1
Application Identifier standard format}.
\item
+ \protect\hyperlink{gs1-digital-link-qr-code}{GS1 Digital Link QR Code}
+ is a variant of Data Matrix that should be used when encoding a GS1
+ Digital Link URI.
+\item
\protect\hyperlink{hibc-symbols}{HIBC QR Code} is a variant of QR Code
that should be used when encoding HIBC formatted data.
+\item
+ \protect\hyperlink{swiss-qr-code}{Swiss QR Code} is a variant of the
+ QR Code for use with the QR-bill application supporting Swiss
+ payments.
\end{itemize}
Standards: ISO/IEC 18004, JIS X 0510, ITS - QR Code, AIM ISS - QR Code.
-\paragraph{Data and Options}\label{data-and-options-14}
+\hypertarget{data-and-options-16}{%
+\paragraph{Data and Options}\label{data-and-options-16}}
\begin{itemize}
\tightlist
\item
- The data field can contain any extended ASCII data.
+ The data field can contain any extended ASCII data. The default
+ interpretation of data by readers is in accordance with ISO/IEC
+ 8859-1. When supported by the receiver characters from other code
+ pages can be encoded using Extended Channel Interpretation (ECI).
\item
When the \textbf{parse} option is specified, any instances of
\texttt{\^{}NNN} in the data field are replaced with their equivalent
ASCII value, useful for specifying unprintable characters.
\item
+ When the \textbf{parsefnc} option is specified, non-data function
+ characters can be specified by escape sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}FNC1}: FNC1. \emph{Recommendation: Use
+ \protect\hyperlink{gs1-qr-code}{GS1 QR Code} for encoding GS1 AI
+ syntax data.}
+ \item
+ \texttt{\^{}ECI000000} to \texttt{\^{}ECI999999}: ECI indicators
+ \end{itemize}
+\item
The \textbf{eclevel} option is used to specify the error correction
level:
@@ -1292,18 +1699,23 @@ Standards: ISO/IEC 18004, JIS X 0510, ITS - QR Code, AIM ISS - QR Code.
is the minimum size to represent the given data at the selected error
correction level.
\item
- The \textbf{format} option is used to select between
- \texttt{format=full} and \texttt{format=micro} (deprecated) symbol
- types. Alternatively, \texttt{format=any} will select the optimal
- symbol format for the given data. By default \emph{full} format
- symbols will be generated.
-\item
- Note: It is recommended that the
- \protect\hyperlink{micro-qr-code}{Micro QR Code} encoder is used for
- such symbols.
+ \emph{Deprecated}: The \textbf{format} option is used to specify the
+ symbol type, either:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{full} (default)
+ \item
+ \texttt{micro}: Use \protect\hyperlink{micro-qr-code}{Micro QR Code}
+ for Micro QR Code symbols.
+ \item
+ \texttt{rmqr}: The standard is still in draft.
+ \end{itemize}
\end{itemize}
-\paragraph{Examples}\label{examples-11}
+\hypertarget{examples-13}{%
+\paragraph{Examples}\label{examples-13}}
\begin{verbatim}
Data: QR Code
@@ -1327,8 +1739,8 @@ Encoder: qrcode
\includegraphics{images/qrcode-2.eps}
-\hypertarget{micro-qr-code}{\subsubsection{Micro QR
-Code}\label{micro-qr-code}}
+\hypertarget{micro-qr-code}{%
+\subsubsection{Micro QR Code}\label{micro-qr-code}}
The \textbf{Micro QR Code} symbology is a smaller variant of
\protect\hyperlink{qr-code}{QR Code} that is used in applications that
@@ -1347,13 +1759,18 @@ Variants:
Standards: ISO/IEC 18004, JIS X 0510, ITS - QR Code, AIM ISS - QR Code.
-\paragraph{Data and Options}\label{data-and-options-15}
+\hypertarget{data-and-options-17}{%
+\paragraph{Data and Options}\label{data-and-options-17}}
\begin{itemize}
\tightlist
\item
- The data field can contain any extended ASCII data and will select the
- appropriate size symbol to work around the following restrictions:
+ The data field can contain any extended ASCII data. The default
+ interpretation of data by readers is in accordance with ISO/IEC
+ 8859-1.
+\item
+ An appropriate size will be selected to work around the following
+ restrictions:
\begin{itemize}
\tightlist
@@ -1389,7 +1806,8 @@ Standards: ISO/IEC 18004, JIS X 0510, ITS - QR Code, AIM ISS - QR Code.
correction level.
\end{itemize}
-\paragraph{Examples}\label{examples-12}
+\hypertarget{examples-14}{%
+\paragraph{Examples}\label{examples-14}}
\begin{verbatim}
Data: 01234567
@@ -1399,9 +1817,90 @@ Encoder: microqrcode
\includegraphics{images/qrcode-5.eps}
-\subsection{One-Dimensional}\label{one-dimensional}
+\hypertarget{swiss-qr-code}{%
+\subsubsection{Swiss QR Code}\label{swiss-qr-code}}
+
+\textbf{Swiss QR Code} is a variant of the
+\protect\hyperlink{qr-code}{QR Code} barcode symbology for use with the
+QR-bill application supporting Swiss payments.
+
+Standards: Swiss Implementation Guidelines QR-bill, ISO/IEC 18004, ITS -
+QR Code
+
+\hypertarget{data-and-options-18}{%
+\paragraph{Data and Options}\label{data-and-options-18}}
+
+\begin{itemize}
+\tightlist
+\item
+ The data field input is provided in the format described in the Swiss
+ Implementation Guidelines QR-bill document.
+\item
+ The \textbf{version} option is used to specify the size of the symbol,
+ 5 to 25. This is not typically specified.
+\item
+ If the \textbf{version} is unspecified the encoder will default to
+ creating a symbol that is the minimum size to represent the given data
+ at the selected error correction level.
+\end{itemize}
-\hypertarget{code-128}{\subsubsection{Code 128}\label{code-128}}
+Note: Swiss QR Code specifies that the image shall be 46mm x 46mm
+(excluding quiet zone), irrespective of QR Code version, and is
+overlayed with a fixed 7mm x 7mm Swiss Cross pattern. The Swiss Cross
+pitch bears no relation to the module width of the QR symbol, so we must
+assume that the application provides sufficient resolution throughout
+the print process that defects produced by issues such as pixel grazing
+are insignificant. Therefore, unlike most other encoders, we do not pick
+a fixed module width to assist with grid fitting but rather ensure that
+the image is scaled to a fixed size, per the specification.
+
+\hypertarget{example-1}{%
+\paragraph{Example}\label{example-1}}
+
+\begin{verbatim}
+Data:
+ SPC
+ 0200
+ 1
+ CH5800791123000889012
+ S
+ Robert Schneider AG
+ Rue du Lac
+ 1268
+ 2501
+ Biel
+ CH
+
+
+
+
+
+
+
+ 199.95
+ CHF
+ K
+ Pia-Maria Rutschmann-Schnyder
+ Grosse Marktgasse 28
+ 9400 Rorschach
+
+
+ CH
+ SCOR
+ RF18539007547034
+
+ EPD
+Options:
+Encoder: swissqrcode
+\end{verbatim}
+
+\includegraphics{images/swissqrcode-1.eps}
+
+\hypertarget{one-dimensional}{%
+\subsection{One-Dimensional}\label{one-dimensional}}
+
+\hypertarget{code-128}{%
+\subsubsection{Code 128}\label{code-128}}
\textbf{Code 128} is an arbitrarily long, high-density barcode symbology
that can be used to encode full 256 character extended-ASCII.
@@ -1424,12 +1923,17 @@ Variants:
Standards: ISO/IEC 15417, ANSI/AIM BC4 - ISS Code 128, BS EN 799.
-\paragraph{Data and Options}\label{data-and-options-16}
+\hypertarget{data-and-options-19}{%
+\paragraph{Data and Options}\label{data-and-options-19}}
\begin{itemize}
\tightlist
\item
- The input can consist of any extended ASCII data.
+ The data field input can consist of any extended ASCII data. The
+ default interpretation of data by readers is in accordance with
+ ISO/IEC 8859-1.
+\item
+ The mandatory check digit is calculated automatically.
\item
When the \textbf{parse} option is specified, any instances of
\texttt{\^{}NNN} in the data field are replaced with their equivalent
@@ -1441,22 +1945,33 @@ Standards: ISO/IEC 15417, ANSI/AIM BC4 - ISS Code 128, BS EN 799.
allow the encoding of extended ASCII characters.
\item
When the \textbf{parsefnc} option is specified, non-data function
- characters can be specified by \texttt{\^{}FNC1} through
- \texttt{\^{}FNC3}.
-\item
- When the \textbf{parsefnc} option is specified, the special pseudo
- characters \texttt{\^{}LNKA} and \texttt{\^{}LNKC} at the end of the
- symbol indicate that a GS1-128 symbol includes a \emph{CC-A/B} or
- \emph{CC-C} GS1 composite 2D component.
+ characters can be specified by escape sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}FNC1}: FNC1. \emph{Recommendation: Use
+ \protect\hyperlink{gs1-128}{GS1-128} for encoding GS1 AI syntax
+ data.}
+ \item
+ \texttt{\^{}FNC2}: FNC2
+ \item
+ \texttt{\^{}FNC3}: FNC3
+ \end{itemize}
\item
The \textbf{raw} option denotes that the data field is providing the
input as pre-encoded codewords in \texttt{\^{}NNN} format, suitable
for direct low-level encoding.
\item
- The mandatory check digit is calculated automatically.
+ \emph{Deprecated: For internal use.} When the \textbf{parsefnc} option
+ is specified, the special pseudo characters \texttt{\^{}LNKA} and
+ \texttt{\^{}LNKC} at the end of the symbol indicate that a GS1-128
+ symbol includes a \emph{CC-A/B} or \emph{CC-C} GS1 composite 2D
+ component.
\end{itemize}
-\paragraph{Example}\label{example-1}
+\hypertarget{example-2}{%
+\paragraph{Example}\label{example-2}}
\begin{verbatim}
Data: Count0123456789!
@@ -1466,7 +1981,8 @@ Encoder: code128
\includegraphics{images/code128-1.eps}
-\hypertarget{code-39}{\subsubsection{Code 39}\label{code-39}}
+\hypertarget{code-39}{%
+\subsubsection{Code 39}\label{code-39}}
The \textbf{Code 39} barcode symbology is discrete, variable length and
self-checking.
@@ -1492,7 +2008,8 @@ Variants:
Standards: ISO/IEC 16388, ANSI/AIM BC1 - USS Code 39, BS EN 800, MIL STD
1189.
-\paragraph{Data and Options}\label{data-and-options-17}
+\hypertarget{data-and-options-20}{%
+\paragraph{Data and Options}\label{data-and-options-20}}
\begin{itemize}
\tightlist
@@ -1518,7 +2035,8 @@ Standards: ISO/IEC 16388, ANSI/AIM BC1 - USS Code 39, BS EN 800, MIL STD
readable text.
\end{itemize}
-\paragraph{Examples}\label{examples-13}
+\hypertarget{examples-15}{%
+\paragraph{Examples}\label{examples-15}}
\begin{verbatim}
Data: CODE39
@@ -1544,8 +2062,8 @@ Encoder: code39
\includegraphics{images/code39-3.eps}
-\hypertarget{code-39-extended}{\subsubsection{Code 39
-Extended}\label{code-39-extended}}
+\hypertarget{code-39-extended}{%
+\subsubsection{Code 39 Extended}\label{code-39-extended}}
The \textbf{Code 39 Extended} barcode symbology is discrete, variable
length and self-checking. It is based on
@@ -1565,7 +2083,8 @@ Variants:
Standards: ISO/IEC 16388, ANSI/AIM BC1 - USS Code 39, BS EN 800.
-\paragraph{Data and Options}\label{data-and-options-18}
+\hypertarget{data-and-options-21}{%
+\paragraph{Data and Options}\label{data-and-options-21}}
\begin{itemize}
\tightlist
@@ -1586,7 +2105,8 @@ Standards: ISO/IEC 16388, ANSI/AIM BC1 - USS Code 39, BS EN 800.
readable text.
\end{itemize}
-\paragraph{Examples}\label{examples-14}
+\hypertarget{examples-16}{%
+\paragraph{Examples}\label{examples-16}}
\begin{verbatim}
Data: Code39 Ext!
@@ -1604,7 +2124,8 @@ Encoder: code39ext
\includegraphics{images/code39ext-2.eps}
-\hypertarget{code-93}{\subsubsection{Code 93}\label{code-93}}
+\hypertarget{code-93}{%
+\subsubsection{Code 93}\label{code-93}}
\textbf{Code 93} is a continuous, variable length, self-checking barcode
symbology.
@@ -1623,7 +2144,8 @@ Variants:
Standards: ANSI/AIM BC5 - USS Code 93, ITS 93i.
-\paragraph{Data and Options}\label{data-and-options-19}
+\hypertarget{data-and-options-22}{%
+\paragraph{Data and Options}\label{data-and-options-22}}
\begin{itemize}
\tightlist
@@ -1640,14 +2162,27 @@ Standards: ANSI/AIM BC5 - USS Code 93, ITS 93i.
Symbols \texttt{-.\$/+\%*} and \emph{space}
\end{itemize}
\item
- The \textbf{parsefnc} option allows the special shift characters to be
- supplied as \texttt{\^{}SFT\$}, \texttt{\^{}SFT\%}, \texttt{\^{}SFT/}
- and \texttt{\^{}SFT+}.
-\item
The \textbf{includecheck} option calculates the two check digits.
+\item
+ \emph{Deprecated: For internal use.} The \textbf{parsefnc} option
+ allows the special shift characters to be supplied as escape
+ sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}SFT\$}: (\$)
+ \item
+ \texttt{\^{}SFT\%}: (\%)
+ \item
+ \texttt{\^{}SFT/}: (/)
+ \item
+ \texttt{\^{}SFT+}: (+)
+ \end{itemize}
\end{itemize}
-\paragraph{Examples}\label{examples-15}
+\hypertarget{examples-17}{%
+\paragraph{Examples}\label{examples-17}}
\begin{verbatim}
Data: CODE93
@@ -1668,8 +2203,8 @@ Encoder: code93
\includegraphics{images/code93-2.eps}
-\hypertarget{code-93-extended}{\subsubsection{Code 93
-Extended}\label{code-93-extended}}
+\hypertarget{code-93-extended}{%
+\subsubsection{Code 93 Extended}\label{code-93-extended}}
The \textbf{Code 93 Extended} barcode symbology is continuous, variable
length and self-checking. It is based on
@@ -1690,7 +2225,8 @@ Variants:
Standards: ANSI/AIM BC5 - USS Code 93, ITS 93i.
-\paragraph{Data and Options}\label{data-and-options-20}
+\hypertarget{data-and-options-23}{%
+\paragraph{Data and Options}\label{data-and-options-23}}
\begin{itemize}
\tightlist
@@ -1705,7 +2241,8 @@ Standards: ANSI/AIM BC5 - USS Code 93, ITS 93i.
The \textbf{includecheck} option calculates the two check digits.
\end{itemize}
-\paragraph{Examples}\label{examples-16}
+\hypertarget{examples-18}{%
+\paragraph{Examples}\label{examples-18}}
\begin{verbatim}
Data: Code93Ext!
@@ -1723,8 +2260,8 @@ Encoder: code93ext
\includegraphics{images/code93ext-2.eps}
-\hypertarget{interleaved-2-of-5}{\subsubsection{Interleaved 2 of
-5}\label{interleaved-2-of-5}}
+\hypertarget{interleaved-2-of-5}{%
+\subsubsection{Interleaved 2 of 5}\label{interleaved-2-of-5}}
\textbf{Interleaved 2 of 5} is a high-density numeric barcode symbology.
@@ -1743,23 +2280,25 @@ Variants:
Standards: ISO/IEC 16390, ANSI/AIM BC2 - USS Interleaved 2 of 5, BS EN
801.
-\paragraph{Data and Options}\label{data-and-options-21}
+\hypertarget{data-and-options-24}{%
+\paragraph{Data and Options}\label{data-and-options-24}}
\begin{itemize}
\tightlist
\item
The data can consist of any number of digits.
\item
+ If the length of the symbol including the possible check digit would
+ be odd then the data is prefixed by \emph{0}.
+\item
The \textbf{includecheck} option calculates the check digit.
\item
The \textbf{includecheckintext} option makes the calculated checksum
appear in the human readable text.
-\item
- If the length of the symbol including the possible check digit would
- be odd then the data is prefixed by \emph{0}.
\end{itemize}
-\paragraph{Examples}\label{examples-17}
+\hypertarget{examples-19}{%
+\paragraph{Examples}\label{examples-19}}
\begin{verbatim}
Data: 0123456789
@@ -1777,10 +2316,156 @@ Encoder: interleaved2of5
\includegraphics{images/itf-2.eps}
-\subsection{Supply Chain}\label{supply-chain}
+\hypertarget{supply-chain}{%
+\subsection{Supply Chain}\label{supply-chain}}
+
+\hypertarget{ean-14}{%
+\subsubsection{EAN-14}\label{ean-14}}
+
+\textbf{EAN-14} is an implementation of the
+\protect\hyperlink{gs1-128}{GS1-128} barcode symbology with \emph{AI
+(01)} that is used to encode a lone GTIN-14.
+
+Also known as: UCC-14.
+
+Standards: ISO/IEC 15417, ANSI/AIM BC4-1999 ISS, BS EN 799, GS1 General
+Specifications.
+
+\hypertarget{data-and-options-25}{%
+\paragraph{Data and Options}\label{data-and-options-25}}
+
+\begin{itemize}
+\tightlist
+\item
+ The data field input must be a solitary \emph{AI (01)} with thirteen
+ or fourteen digits of a GTIN, i.e. \texttt{(01)...}.
+\item
+ Arbitrary spacing may be placed between the digits to format the human
+ readable text without interfering with the encoded data.
+\item
+ If thirteen digits of primary data are supplied then the check digit
+ is calculated automatically. Otherwise the provided check digit will
+ be verified.
+\end{itemize}
+
+\hypertarget{examples-20}{%
+\paragraph{Examples}\label{examples-20}}
+
+Identical symbols, input provided with and without a check digit:
+
+\begin{verbatim}
+Data: (01)04601234567893
+Options: includetext
+Encoder: ean14
+\end{verbatim}
+
+\begin{verbatim}
+Data: (01)0460123456789
+Options: includetext
+Encoder: ean14
+\end{verbatim}
+
+\includegraphics{images/ean14-1.eps}
+
+\hypertarget{itf-14}{%
+\subsubsection{ITF-14}\label{itf-14}}
+
+\textbf{ITF-14} is an implementation of the
+\protect\hyperlink{interleaved-2-of-5}{Interleaved 2 of 5} barcode
+symbology that is typically used to encode a GTIN-14, GTIN-13 or
+GTIN-12.
+
+Also known as: UPC Shipping Container Symbol, SCS, UPC Case Code.
+
+Standards: ISO/IEC 16390, ANSI/AIM BC2-1995 USS, BS EN 801, GS1 General
+Specifications.
+
+\hypertarget{data-and-options-26}{%
+\paragraph{Data and Options}\label{data-and-options-26}}
+
+\begin{itemize}
+\tightlist
+\item
+ The data consists of either thirteen or fourteen digits.
+\item
+ Arbitrary spacing may be placed between the digits to format the human
+ readable text without interfering with the encoded data.
+\item
+ If thirteen digits are supplied then the check digit is calculated
+ automatically. Otherwise the provided check digit will be verified.
+\end{itemize}
+
+\hypertarget{examples-21}{%
+\paragraph{Examples}\label{examples-21}}
+
+Identical symbols, input provided with and without a check digit:
+
+\begin{verbatim}
+Data: 04601234567893
+Options: includetext
+Encoder: itf14
+\end{verbatim}
-\hypertarget{gs1-datamatrix}{\subsubsection{GS1
-DataMatrix}\label{gs1-datamatrix}}
+\begin{verbatim}
+Data: 0460123456789
+Options: includetext
+Encoder: itf14
+\end{verbatim}
+
+\includegraphics{images/itf-14-1.eps}
+
+\hypertarget{sscc-18}{%
+\subsubsection{SSCC-18}\label{sscc-18}}
+
+\textbf{SSCC-18} is an implementation of the
+\protect\hyperlink{gs1-128}{GS1-128} barcode symbology with \emph{AI
+(00)} that is typically used to encode an eighteen-digit shipping
+container serial number.
+
+Also known as: EAN-18, NVE.
+
+Standards: ISO/IEC 15417, ANSI/AIM BC4-1999 ISS, BS EN 799, GS1 General
+Specifications.
+
+\hypertarget{data-and-options-27}{%
+\paragraph{Data and Options}\label{data-and-options-27}}
+
+\begin{itemize}
+\tightlist
+\item
+ The data field input must be a solitary \emph{AI (00)} with seventeen
+ or eighteen digits of a Serial Shipping Container Code, i.e.
+ \texttt{(00)...}.
+\item
+ Arbitrary spacing may be placed between the digits to format the human
+ readable text without interfering with the encoded data.
+\item
+ If seventeen digits of primary data are supplied then the check digit
+ is calculated automatically. Otherwise the provided check digit will
+ be verified.
+\end{itemize}
+
+\hypertarget{example-3}{%
+\paragraph{Example}\label{example-3}}
+
+Identical symbols, input provided with and without a check digit:
+
+\begin{verbatim}
+Data: (00)006141411234567890
+Options: includetext
+Encoder: sscc18
+\end{verbatim}
+
+\begin{verbatim}
+Data: (00)00614141123456789
+Options: includetext
+Encoder: sscc18
+\end{verbatim}
+
+\includegraphics{images/sscc18-1.eps}
+
+\hypertarget{gs1-datamatrix}{%
+\subsubsection{GS1 DataMatrix}\label{gs1-datamatrix}}
\textbf{GS1 DataMatrix} is an implementation of the
\protect\hyperlink{data-matrix}{Data Matrix} (ECC 200) barcode symbology
@@ -1789,7 +2474,8 @@ formatted} data.
Standards: ISO/IEC 16022, ANSI/AIM BC11 ISS, GS1 General Specifications.
-\paragraph{Data and Options}\label{data-and-options-22}
+\hypertarget{data-and-options-28}{%
+\paragraph{Data and Options}\label{data-and-options-28}}
\begin{itemize}
\tightlist
@@ -1799,6 +2485,13 @@ Standards: ISO/IEC 16022, ANSI/AIM BC11 ISS, GS1 General Specifications.
Application Identifier standard format} starting with the mandatory
\emph{(01)} Application Identifier.
\item
+ Note that it is not necessary to specify \emph{FNC1} characters since
+ the encoder will insert these automatically where necessary.
+\item
+ \emph{Deprecated.} The \textbf{dontlint} option disables GS1
+ Application Identifier syntax validation allowing images to be
+ generated for input that does not comply with GS1 standards.
+\item
The \textbf{format} option is used to specify the shape of the symbol,
either \texttt{square} (default) or \texttt{rectangle}.
\item
@@ -1829,7 +2522,8 @@ Standards: ISO/IEC 16022, ANSI/AIM BC11 ISS, GS1 General Specifications.
given data.
\end{itemize}
-\paragraph{Example}\label{example-2}
+\hypertarget{example-4}{%
+\paragraph{Example}\label{example-4}}
\begin{verbatim}
Data: (01)95012345678903(3103)000123
@@ -1839,8 +2533,8 @@ Encoder: gs1datamatrix
\includegraphics{images/gs1datamatrix-1.eps}
-\hypertarget{gs1-qr-code}{\subsubsection{GS1 QR
-Code}\label{gs1-qr-code}}
+\hypertarget{gs1-qr-code}{%
+\subsubsection{GS1 QR Code}\label{gs1-qr-code}}
\textbf{GS1 QR Code} is an implementation of the
\protect\hyperlink{qr-code}{QR Code} barcode symbology with
@@ -1849,7 +2543,8 @@ formatted data}.
Standards: ISO/IEC 18004, ITS - QR Code, GS1 General Specifications.
-\paragraph{Data and Options}\label{data-and-options-23}
+\hypertarget{data-and-options-29}{%
+\paragraph{Data and Options}\label{data-and-options-29}}
\begin{itemize}
\tightlist
@@ -1859,6 +2554,13 @@ Standards: ISO/IEC 18004, ITS - QR Code, GS1 General Specifications.
Application Identifier standard format} starting with the mandatory
\emph{(01)} and \emph{(8200)} Application Identifiers.
\item
+ Note that it is not necessary to specify \emph{FNC1} characters since
+ the encoder will insert these automatically where necessary.
+\item
+ \emph{Deprecated.} The \textbf{dontlint} option disables GS1
+ Application Identifier syntax validation allowing images to be
+ generated for input that does not comply with GS1 standards.
+\item
The \textbf{eclevel} option is used to specify the error correction
level:
@@ -1882,7 +2584,8 @@ Standards: ISO/IEC 18004, ITS - QR Code, GS1 General Specifications.
at the selected error correction level.
\end{itemize}
-\paragraph{Example}\label{example-3}
+\hypertarget{example-5}{%
+\paragraph{Example}\label{example-5}}
\begin{verbatim}
Data: (01)03453120000011(8200)http://www.abc.net
@@ -1900,7 +2603,125 @@ Encoder: gs1qrcode
\includegraphics{images/gs1qrcode-2.eps}
-\hypertarget{gs1-128}{\subsubsection{GS1-128}\label{gs1-128}}
+\hypertarget{gs1-digital-link-datamatrix}{%
+\subsubsection{GS1 Digital Link
+DataMatrix}\label{gs1-digital-link-datamatrix}}
+
+\textbf{GS1 Digital Link DataMatrix} is an implementation of the
+\protect\hyperlink{data-matrix}{Data Matrix} (ECC 200) barcode symbology
+containing a GS1 Digital Link URI.
+
+Standards: ISO/IEC 16022, ANSI/AIM BC11 ISS, GS1 Digital Link Standard:
+URI Syntax.
+
+\hypertarget{data-and-options-30}{%
+\paragraph{Data and Options}\label{data-and-options-30}}
+
+\begin{itemize}
+\tightlist
+\item
+ The data field input is provided as a GS1 Digital Link URI.
+\item
+ \emph{Deprecated.} The \textbf{dontlint} option disables GS1
+ Application Identifier syntax validation allowing images to be
+ generated for input that does not comply with GS1 standards.
+\item
+ The \textbf{format} option is used to specify the shape of the symbol,
+ either \texttt{square} (default) or \texttt{rectangle}.
+\item
+ The \textbf{columns} and \textbf{rows} options are used to specify the
+ size of the symbol.
+\item
+ The \textbf{version} option can also be used to specify the symbol
+ size, as \texttt{version=RxC}. Valid options are:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ With \texttt{format=square}: \emph{10x10}, \emph{12x12},
+ \emph{14x14}, \emph{16x16}, \emph{18x18}, \emph{20x20},
+ \emph{22x22}, \emph{24x24}, \emph{26x26}, \emph{32x32},
+ \emph{36x36}, \emph{40x40}, \emph{44x44}, \emph{48x48},
+ \emph{52x52}, \emph{64x64}, \emph{72x72}, \emph{80x80},
+ \emph{88x88}, \emph{96x96}, \emph{104x104}, \emph{120x120},
+ \emph{132x132}, \emph{144x144}
+ \item
+ With \texttt{format=rectangle}: \emph{8x18}, \emph{8x32},
+ \emph{12x26}, \emph{12x36}, \emph{16x36}, \emph{16x48}
+ \end{itemize}
+\item
+ If \textbf{columns}, \textbf{rows} and \textbf{version} are
+ unspecified the encoder will default to creating a symbol of the
+ specified \textbf{format} that is the minimum size to represent the
+ given data.
+\end{itemize}
+
+\hypertarget{example-6}{%
+\paragraph{Example}\label{example-6}}
+
+\begin{verbatim}
+Data: https://id.gs1.org/01/12312312312333/22/ABC%2d123?99=XYZ%2f987#test
+Options:
+Encoder: gs1dldatamatrix
+\end{verbatim}
+
+\hypertarget{gs1-qr-digital-link-code}{%
+\subsubsection{GS1 QR Digital Link
+Code}\label{gs1-qr-digital-link-code}}
+
+\textbf{GS1 Digital Link QR Code} is an implementation of the
+\protect\hyperlink{qr-code}{QR Code} barcode symbology containing a GS1
+Digital Link URI.
+
+Standards: ISO/IEC 18004, ITS - QR Code, GS1 Digital Link Standard: URI
+Syntax.
+
+\hypertarget{data-and-options-31}{%
+\paragraph{Data and Options}\label{data-and-options-31}}
+
+\begin{itemize}
+\tightlist
+\item
+ The data field input is provided as a GS1 Digital Link URI.
+\item
+ \emph{Deprecated.} The \textbf{dontlint} option disables GS1
+ Application Identifier syntax validation allowing images to be
+ generated for input that does not comply with GS1 standards.
+\item
+ The \textbf{eclevel} option is used to specify the error correction
+ level:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{eclevel=L} - Low
+ \item
+ \texttt{eclevel=M} - Medium (default)
+ \item
+ \texttt{eclevel=Q} - Quality
+ \item
+ \texttt{eclevel=H} - High
+ \end{itemize}
+\item
+ The \textbf{version} option is used to specify the size of the symbol,
+ 1 to 40.
+\item
+ If the \textbf{version} is unspecified the encoder will default to
+ creating a symbol that is the minimum size to represent the given data
+ at the selected error correction level.
+\end{itemize}
+
+\hypertarget{example-7}{%
+\paragraph{Example}\label{example-7}}
+
+\begin{verbatim}
+Data: https://id.gs1.org/01/12312312312333/22/ABC%2d123?99=XYZ%2f987#test
+Options:
+Encoder: gs1dlqrcode
+\end{verbatim}
+
+\hypertarget{gs1-128}{%
+\subsubsection{GS1-128}\label{gs1-128}}
\textbf{GS1-128} is an implementation of the
\protect\hyperlink{code-128}{Code 128} barcode symbology which carries
@@ -1919,16 +2740,17 @@ Variants:
composite 2D component is required.
\item
\protect\hyperlink{ean-14}{EAN-14} is a variant of GS1-128 that should
- be used when encoding a fourteen-digit GTIN.
+ be used when encoding a lone fourteen-digit GTIN.
\item
\protect\hyperlink{sscc-18}{SSCC-18} is a variant of GS1-128 that
- should be used when encoding an eighteen-digit SSCC.
+ should be used when encoding a lone eighteen-digit SSCC.
\end{itemize}
Standards: ISO/IEC 15417, ANSI/AIM BC4-1999 ISS, BS EN 799, GS1 General
Specifications.
-\paragraph{Data and Options}\label{data-and-options-24}
+\hypertarget{data-and-options-32}{%
+\paragraph{Data and Options}\label{data-and-options-32}}
\begin{itemize}
\tightlist
@@ -1937,14 +2759,24 @@ Specifications.
\protect\hyperlink{gs1-application-identifier-standard-format}{GS1
Application Identifier standard format}.
\item
- The \textbf{linkagea} option specifies that the symbol includes a
- \emph{CC-A} or \emph{CC-B} GS1 composite 2D component.
+ Note that it is not necessary to specify \emph{FNC1} characters since
+ the encoder will insert these automatically where necessary.
+\item
+ \emph{Deprecated.} The \textbf{dontlint} option disables GS1
+ Application Identifier syntax validation allowing images to be
+ generated for input that does not comply with GS1 standards.
\item
- The \textbf{linkagec} option specifies that the symbol includes a
- \emph{CC-C} GS1 composite 2D component.
+ \emph{Deprecated: For internal use.} The \textbf{linkagea} option
+ specifies that the symbol includes a \emph{CC-A} or \emph{CC-B} GS1
+ composite 2D component.
+\item
+ \emph{Deprecated: For internal use.} The \textbf{linkagec} option
+ specifies that the symbol includes a \emph{CC-C} GS1 composite 2D
+ component.
\end{itemize}
-\paragraph{Examples}\label{examples-18}
+\hypertarget{examples-22}{%
+\paragraph{Examples}\label{examples-22}}
GTIN \emph{95012345678903}; Weight \emph{0.123kg}:
@@ -1967,149 +2799,61 @@ Encoder: gs1-128
\includegraphics{images/ean128-2.eps}
-\hypertarget{ean-14}{\subsubsection{EAN-14}\label{ean-14}}
+\hypertarget{gs1-dotcode}{%
+\subsubsection{GS1 DotCode}\label{gs1-dotcode}}
-\textbf{EAN-14} is an implementation of the
-\protect\hyperlink{gs1-128}{GS1-128} barcode symbology with \emph{AI
-(01)} that is typically used to encode a GTIN-14.
-
-Also known as: UCC-14.
+\textbf{GS1 DotCode} is an implementation of the
+\protect\hyperlink{dotcode}{DotCode} barcode symbology with
+\protect\hyperlink{gs1-application-identifier-standard-format}{GS1
+formatted} data.
-Standards: ISO/IEC 15417, ANSI/AIM BC4-1999 ISS, BS EN 799, GS1 General
-Specifications.
+Standards: AIM - ISS DotCode, GS1 General Specifications.
-\paragraph{Data and Options}\label{data-and-options-25}
+\hypertarget{data-and-options-33}{%
+\paragraph{Data and Options}\label{data-and-options-33}}
\begin{itemize}
\tightlist
\item
The data field input is provided in
\protect\hyperlink{gs1-application-identifier-standard-format}{GS1
- Application Identifier standard format} and must be a solitary
- \emph{AI (01)} with thirteen or fourteen digits of a GTIN, i.e.
- \texttt{(01)...}.
-\item
- Arbitrary spacing may be placed between the digits to format the human
- readable text without interfering with the encoded data.
-\item
- If thirteen digits of primary data are supplied then the check digit
- is calculated automatically. Otherwise the provided check digit must
- be correct.
-\end{itemize}
-
-\paragraph{Examples}\label{examples-19}
-
-Identical symbols, input provided with and without a check digit:
-
-\begin{verbatim}
-Data: (01)04601234567893
-Options: includetext
-Encoder: ean14
-\end{verbatim}
-
-\begin{verbatim}
-Data: (01)0460123456789
-Options: includetext
-Encoder: ean14
-\end{verbatim}
-
-\includegraphics{images/ean14-1.eps}
-
-\hypertarget{itf-14}{\subsubsection{ITF-14}\label{itf-14}}
-
-\textbf{ITF-14} is an implementation of the
-\protect\hyperlink{interleaved-2-of-5}{Interleaved 2 of 5} barcode
-symbology that is typically used to encode a GTIN-14, GTIN-13 or
-GTIN-12.
-
-Also known as: UPC Shipping Container Symbol, SCS, UPC Case Code.
-
-Standards: ISO/IEC 16390, ANSI/AIM BC2-1995 USS, BS EN 801, GS1 General
-Specifications.
-
-\paragraph{Data and Options}\label{data-and-options-26}
-
-\begin{itemize}
-\tightlist
+ Application Identifier standard format}.
\item
- The data consists of either thirteen or fourteen digits.
+ Note that it is not necessary to specify \emph{FNC1} characters since
+ the encoder will insert these automatically where necessary.
\item
- Arbitrary spacing may be placed between the digits to format the human
- readable text without interfering with the encoded data.
+ \emph{Deprecated.} The \textbf{dontlint} option disables GS1
+ Application Identifier syntax validation allowing images to be
+ generated for input that does not comply with GS1 standards.
\item
- If thirteen digits are supplied then the check digit is calculated
- automatically. Otherwise the provided check digit must be correct.
-\end{itemize}
-
-\paragraph{Examples}\label{examples-20}
-
-Identical symbols, input provided with and without a check digit:
-
-\begin{verbatim}
-Data: 04601234567893
-Options: includetext
-Encoder: itf14
-\end{verbatim}
-
-\begin{verbatim}
-Data: 0460123456789
-Options: includetext
-Encoder: itf14
-\end{verbatim}
-
-\includegraphics{images/itf-14-1.eps}
-
-\hypertarget{sscc-18}{\subsubsection{SSCC-18}\label{sscc-18}}
-
-\textbf{SSCC-18} is an implementation of the
-\protect\hyperlink{gs1-128}{GS1-128} barcode symbology with \emph{AI
-(00)} that is typically used to encode an eighteen-digit shipping
-container serial number.
-
-Also known as: EAN-18, NVE.
-
-Standards: ISO/IEC 15417, ANSI/AIM BC4-1999 ISS, BS EN 799, GS1 General
-Specifications.
-
-\paragraph{Data and Options}\label{data-and-options-27}
-
-\begin{itemize}
-\tightlist
+ The \textbf{ratio} is used to specify the aspect ratio of the symbol.
+ The default is 1.5.
\item
- The data field input is provided in
- \protect\hyperlink{gs1-application-identifier-standard-format}{GS1
- Application Identifier standard format} and must be a solitary
- \emph{AI (00)} with seventeen or eighteen digits of a Serial Shipping
- Container Code, i.e. \texttt{(00)0...}.
-\item
- Arbitrary spacing may be placed between the digits to format the human
- readable text without interfering with the encoded data.
+ The \textbf{columns} and \textbf{rows} options are used to specify the
+ size of the symbol. When these are not specified a symbol is generated
+ that maintains the selected aspect ratio.
\item
- The mandatory check digit is calculated automatically and any user
- provided check digit is discarded.
+ \emph{Deprecated: Use only if performance is a concern.} The
+ \textbf{fast} option is used to enable the optional high-speed symbol
+ masking algorithm.
\end{itemize}
-\paragraph{Example}\label{example-4}
-
-Identical symbols, input provided with and without a check digit:
-
-\begin{verbatim}
-Data: (00)006141411234567890
-Options: includetext
-Encoder: sscc18
-\end{verbatim}
+\hypertarget{examples-23}{%
+\paragraph{Examples}\label{examples-23}}
\begin{verbatim}
-Data: (00)00614141123456789
-Options: includetext
-Encoder: sscc18
+Data: (235)5vBZIF%!<B;?oa%(01)01234567890128(8008)19052001
+Options: rows=16
+Encoder: gs1dotcode
\end{verbatim}
-\includegraphics{images/sscc18-1.eps}
+\includegraphics{images/gs1dotcode-1.eps}
-\subsection{GS1 DataBar Family}\label{gs1-databar-family}
+\hypertarget{gs1-databar-family}{%
+\subsection{GS1 DataBar Family}\label{gs1-databar-family}}
-\hypertarget{gs1-databar-omnidirectional}{\subsubsection{GS1 DataBar
+\hypertarget{gs1-databar-omnidirectional}{%
+\subsubsection{GS1 DataBar
Omnidirectional}\label{gs1-databar-omnidirectional}}
\textbf{GS1 DataBar Omnidirectional} is a fixed-length, linear barcode
@@ -2134,26 +2878,25 @@ Variants:
Standards: ISO/IEC 24724, ITS Reduced Space Symbology (RSS), AIM ISS -
Reduced Space Symbology (RSS), GS1 General Specifications.
-\paragraph{Data and Options}\label{data-and-options-28}
+\hypertarget{data-and-options-34}{%
+\paragraph{Data and Options}\label{data-and-options-34}}
\begin{itemize}
\tightlist
\item
- The data field input is provided in
- \protect\hyperlink{gs1-application-identifier-standard-format}{GS1
- Application Identifier standard format} and must be a solitary
- \emph{AI (01)} with thirteen or fourteen digits of a GTIN, i.e.
- \texttt{(01)...}.
+ The data field input is must be a solitary \emph{AI (01)} with
+ thirteen or fourteen digits of a GTIN, i.e. \texttt{(01)...}.
\item
If thirteen digits of \emph{AI (01)} data are supplied then the check
- digit is calculated automatically, otherwise the digits are encoded as
- supplied.
+ digit is calculated automatically, otherwise the provided check digit
+ will be verified.
\item
- The \textbf{linkage} option signifies the presence of a GS1 composite
- 2D component.
+ \emph{Deprecated: For internal use.} The \textbf{linkage} option
+ signifies the presence of a GS1 composite 2D component.
\end{itemize}
-\paragraph{Examples}\label{examples-21}
+\hypertarget{examples-24}{%
+\paragraph{Examples}\label{examples-24}}
Identical symbols, input provided with and without a check digit:
@@ -2171,8 +2914,8 @@ Encoder: databaromni
\includegraphics{images/databaromni-1.eps}
-\hypertarget{gs1-databar-stacked-omnidirectional}{\subsubsection{GS1
-DataBar Stacked
+\hypertarget{gs1-databar-stacked-omnidirectional}{%
+\subsubsection{GS1 DataBar Stacked
Omnidirectional}\label{gs1-databar-stacked-omnidirectional}}
\textbf{GS1 DataBar Stacked Omnidirectional} is a fixed-length, stacked
@@ -2200,26 +2943,25 @@ Variants:
Standards: ISO/IEC 24724, ITS Reduced Space Symbology (RSS), AIM ISS -
Reduced Space Symbology (RSS), GS1 General Specifications.
-\paragraph{Data and Options}\label{data-and-options-29}
+\hypertarget{data-and-options-35}{%
+\paragraph{Data and Options}\label{data-and-options-35}}
\begin{itemize}
\tightlist
\item
- The data field input is provided in
- \protect\hyperlink{gs1-application-identifier-standard-format}{GS1
- Application Identifier standard format} and must be a solitary
- \emph{AI (01)} with thirteen or fourteen digits of a GTIN, i.e.
- \texttt{(01)...}.
+ The data field input must be a solitary \emph{AI (01)} with thirteen
+ or fourteen digits of a GTIN, i.e. \texttt{(01)...}.
\item
If thirteen digits of \emph{AI (01)} data are supplied then the check
- digit is calculated automatically, otherwise the digits are encoded as
- supplied.
+ digit is calculated automatically, otherwise the provided check digit
+ will be verified.
\item
- The \textbf{linkage} option signifies the presence of a GS1 composite
- 2D component.
+ \emph{Deprecated: For internal use.} The \textbf{linkage} option
+ signifies the presence of a GS1 composite 2D component.
\end{itemize}
-\paragraph{Examples}\label{examples-22}
+\hypertarget{examples-25}{%
+\paragraph{Examples}\label{examples-25}}
Identical symbols, input provided with and without a check digit:
@@ -2237,8 +2979,8 @@ Encoder: databarstackedomni
\includegraphics{images/databarstackedomni-1.eps}
-\hypertarget{gs1-databar-expanded}{\subsubsection{GS1 DataBar
-Expanded}\label{gs1-databar-expanded}}
+\hypertarget{gs1-databar-expanded}{%
+\subsubsection{GS1 DataBar Expanded}\label{gs1-databar-expanded}}
\textbf{GS1 DataBar Expanded} is a variable-length, linear barcode
symbology that can be used to encode a GTIN-14 alongside a number of
@@ -2258,12 +3000,17 @@ Variants:
\protect\hyperlink{gs1-composite-symbols}{GS1 DataBar Expanded
Composite} is a variant of GS1 DataBar Expanded that should be used
when a CC-A or CC-B GS1 composite 2D component is required.
+\item
+ \protect\hyperlink{gs1-north-american-coupon-code}{GS1 North American
+ Coupon Code} is an applicaiton of GS1 DataBar Expanded for use with a
+ paperless coupon system.
\end{itemize}
Standards: ISO/IEC 24724, ITS Reduced Space Symbology (RSS), AIM ISS -
Reduced Space Symbology (RSS), GS1 General Specifications.
-\paragraph{Data and Options}\label{data-and-options-30}
+\hypertarget{data-and-options-36}{%
+\paragraph{Data and Options}\label{data-and-options-36}}
\begin{itemize}
\tightlist
@@ -2272,6 +3019,13 @@ Reduced Space Symbology (RSS), GS1 General Specifications.
\protect\hyperlink{gs1-application-identifier-standard-format}{GS1
Application Identifier standard format}.
\item
+ Note that it is not necessary to specify \emph{FNC1} characters since
+ the encoder will insert these automatically where necessary.
+\item
+ \emph{Deprecated.} The \textbf{dontlint} option disables GS1
+ Application Identifier syntax validation allowing images to be
+ generated for input that does not comply with GS1 standards.
+\item
If the data contains a number of application identifiers matching any
of the specifications below then they should be provided in this given
order for maximum encoding efficiency:
@@ -2296,11 +3050,12 @@ Reduced Space Symbology (RSS), GS1 General Specifications.
\texttt{(01)...}
\end{itemize}
\item
- The \textbf{linkage} option signifies the presence of a GS1 composite
- 2D component.
+ \emph{Deprecated: For internal use.} The \textbf{linkage} option
+ signifies the presence of a GS1 composite 2D component.
\end{itemize}
-\paragraph{Examples}\label{examples-23}
+\hypertarget{examples-26}{%
+\paragraph{Examples}\label{examples-26}}
\begin{verbatim}
Data: (01)95012345678903(3103)000123
@@ -2310,8 +3065,9 @@ Encoder: databarexpanded
\includegraphics{images/databarexpanded-1.eps}
-\hypertarget{gs1-databar-expanded-stacked}{\subsubsection{GS1 DataBar
-Expanded Stacked}\label{gs1-databar-expanded-stacked}}
+\hypertarget{gs1-databar-expanded-stacked}{%
+\subsubsection{GS1 DataBar Expanded
+Stacked}\label{gs1-databar-expanded-stacked}}
\textbf{GS1 DataBar Expanded Stacked} is a variable-length,
stacked-linear barcode symbology that can be used to encode a GTIN-14
@@ -2332,12 +3088,17 @@ Variants:
\protect\hyperlink{gs1-composite-symbols}{GS1 DataBar Expanded Stacked
Composite} is a variant of GS1 DataBar Expanded Stacked that should be
used when a CC-A or CC-B GS1 composite 2D component is required.
+\item
+ \protect\hyperlink{gs1-north-american-coupon-code}{GS1 North American
+ Coupon Code} is an applicaiton of GS1 DataBar Expanded for use with a
+ paperless coupon system.
\end{itemize}
Standards: ISO/IEC 24724, ITS Reduced Space Symbology (RSS), AIM ISS -
Reduced Space Symbology (RSS), GS1 General Specifications.
-\paragraph{Data and Options}\label{data-and-options-31}
+\hypertarget{data-and-options-37}{%
+\paragraph{Data and Options}\label{data-and-options-37}}
\begin{itemize}
\tightlist
@@ -2346,6 +3107,13 @@ Reduced Space Symbology (RSS), GS1 General Specifications.
\protect\hyperlink{gs1-application-identifier-standard-format}{GS1
Application Identifier standard format}.
\item
+ Note that it is not necessary to specify \emph{FNC1} characters since
+ the encoder will insert these automatically where necessary.
+\item
+ \emph{Deprecated.} The \textbf{dontlint} option disables GS1
+ Application Identifier syntax validation allowing images to be
+ generated for input that does not comply with GS1 standards.
+\item
If the data contains a number of application identifiers matching any
of the specifications below then they should be provided in this given
order for maximum encoding efficiency:
@@ -2374,11 +3142,12 @@ Reduced Space Symbology (RSS), GS1 General Specifications.
segments per row which must be an even number. The default is
\emph{4}.
\item
- The \textbf{linkage} option signifies the presence of a GS1 composite
- 2D component.
+ \emph{Deprecated: For internal use.} The \textbf{linkage} option
+ signifies the presence of a GS1 composite 2D component.
\end{itemize}
-\paragraph{Examples}\label{examples-24}
+\hypertarget{examples-27}{%
+\paragraph{Examples}\label{examples-27}}
\begin{verbatim}
Data: (01)95012345678903(3103)000123
@@ -2388,8 +3157,8 @@ Encoder: databarexpandedstacked
\includegraphics{images/databarexpandedstacked-1.eps}
-\hypertarget{gs1-databar-truncated}{\subsubsection{GS1 DataBar
-Truncated}\label{gs1-databar-truncated}}
+\hypertarget{gs1-databar-truncated}{%
+\subsubsection{GS1 DataBar Truncated}\label{gs1-databar-truncated}}
\textbf{GS1 DataBar Truncated} is a fixed-length, linear barcode
symbology that can be used to encode a GTIN-14 for in-house
@@ -2414,25 +3183,25 @@ Variants:
Standards: ISO/IEC 24724, ITS Reduced Space Symbology (RSS), AIM ISS -
Reduced Space Symbology (RSS), GS1 General Specifications.
-\paragraph{Data and Options}\label{data-and-options-32}
+\hypertarget{data-and-options-38}{%
+\paragraph{Data and Options}\label{data-and-options-38}}
\begin{itemize}
\tightlist
\item
- The data field input is provided in
- \protect\hyperlink{gs1-application-identifier-standard-format}{GS1
- Application Identifier standard format} and must be a solitary
- \emph{AI (01)} with 13 or 14 digits of a GTIN, i.e. \texttt{(01)...}.
+ The data field input must be a solitary \emph{AI (01)} with 13 or 14
+ digits of a GTIN, i.e. \texttt{(01)...}.
\item
If thirteen digits of \emph{AI (01)} data are supplied then the check
- digit is calculated automatically, otherwise the digits are encoded as
- supplied.
+ digit is calculated automatically, otherwise the provided check digit
+ will be verified.
\item
- The \textbf{linkage} option signifies the presence of a GS1 composite
- 2D component.
+ \emph{Deprecated: For internal use.} The \textbf{linkage} option
+ signifies the presence of a GS1 composite 2D component.
\end{itemize}
-\paragraph{Examples}\label{examples-25}
+\hypertarget{examples-28}{%
+\paragraph{Examples}\label{examples-28}}
Identical symbols, input provided with and without a check digit:
@@ -2450,8 +3219,8 @@ Encoder: databartruncated
\includegraphics{images/databartruncated-1.eps}
-\hypertarget{gs1-databar-stacked}{\subsubsection{GS1 DataBar
-Stacked}\label{gs1-databar-stacked}}
+\hypertarget{gs1-databar-stacked}{%
+\subsubsection{GS1 DataBar Stacked}\label{gs1-databar-stacked}}
\textbf{GS1 DataBar Stacked} is a fixed-length, stacked linear barcode
symbology that can be used to encode a GTIN-14 for in-house
@@ -2476,26 +3245,25 @@ Variants:
Standards: ISO/IEC 24724, ITS Reduced Space Symbology (RSS), AIM ISS -
Reduced Space Symbology (RSS), GS1 General Specifications.
-\paragraph{Data and Options}\label{data-and-options-33}
+\hypertarget{data-and-options-39}{%
+\paragraph{Data and Options}\label{data-and-options-39}}
\begin{itemize}
\tightlist
\item
- The data field input is provided in
- \protect\hyperlink{gs1-application-identifier-standard-format}{GS1
- Application Identifier standard format} and must be a solitary
- \emph{AI (01)} with thirteen or fourteen digits of a GTIN, i.e.
- \texttt{(01)...}.
+ The data field input must be a solitary \emph{AI (01)} with thirteen
+ or fourteen digits of a GTIN, i.e. \texttt{(01)...}.
\item
If thirteen digits of \emph{AI (01)} data are supplied then the check
- digit is calculated automatically, otherwise the digits are encoded as
- supplied.
+ digit is calculated automatically, otherwise the provided check digit
+ will be verified.
\item
- The \textbf{linkage} option signifies the presence of a GS1 composite
- 2D component.
+ \emph{Deprecated: For internal use.} The \textbf{linkage} option
+ signifies the presence of a GS1 composite 2D component.
\end{itemize}
-\paragraph{Examples}\label{examples-26}
+\hypertarget{examples-29}{%
+\paragraph{Examples}\label{examples-29}}
Identical symbols, input provided with and without a check digit:
@@ -2513,8 +3281,8 @@ Encoder: databarstacked
\includegraphics{images/databarstacked-1.eps}
-\hypertarget{gs1-databar-limited}{\subsubsection{GS1 DataBar
-Limited}\label{gs1-databar-limited}}
+\hypertarget{gs1-databar-limited}{%
+\subsubsection{GS1 DataBar Limited}\label{gs1-databar-limited}}
\textbf{GS1 DataBar Limited} is fixed-length, linear barcode symbology
that can be used to encode a GTIN-14 beginning with \emph{0} or \emph{1}
@@ -2535,27 +3303,26 @@ Variants:
Standards: ISO/IEC 24724, ITS Reduced Space Symbology (RSS), AIM ISS -
Reduced Space Symbology (RSS), GS1 General Specifications.
-\paragraph{Data and Options}\label{data-and-options-34}
+\hypertarget{data-and-options-40}{%
+\paragraph{Data and Options}\label{data-and-options-40}}
\begin{itemize}
\tightlist
\item
- The data field input is provided in
- \protect\hyperlink{gs1-application-identifier-standard-format}{GS1
- Application Identifier standard format} and must be a solitary
- \emph{AI (01)} with thirteen or fourteen digits of a GTIN starting
- with \emph{0} or \emph{1}, i.e. \texttt{(01)0...} or
- \texttt{(01)1...}.
+ The data field input must be a solitary \emph{AI (01)} with thirteen
+ or fourteen digits of a GTIN starting with \emph{0} or \emph{1}, i.e.
+ \texttt{(01)0...} or \texttt{(01)1...}.
\item
If thirteen digits of \emph{AI (01)} data are supplied then the check
- digit is calculated automatically, otherwise the digits are encoded as
- supplied.
+ digit is calculated automatically, otherwise the provided check digit
+ will be verified.
\item
- The \textbf{linkage} option signifies the presence of a GS1 composite
- 2D component.
+ \emph{Deprecated: For internal use.} The \textbf{linkage} option
+ signifies the presence of a GS1 composite 2D component.
\end{itemize}
-\paragraph{Examples}\label{examples-27}
+\hypertarget{examples-30}{%
+\paragraph{Examples}\label{examples-30}}
Identical symbols, input provided with and without a check digit:
@@ -2573,15 +3340,59 @@ Encoder: databarlimited
\includegraphics{images/databarlimited-1.eps}
-\subsection{Postal Symbols}\label{postal-symbols}
+\hypertarget{gs1-north-american-coupon-code}{%
+\subsubsection{GS1 North American Coupon
+Code}\label{gs1-north-american-coupon-code}}
+
+\textbf{GS1 North American Coupon Code} is an implementation of the
+\protect\hyperlink{gs1-databar-expanded}{GS1 DataBar Expanded} barcode
+symbology with AI (8110) that is used as a paperless coupon system at
+point of sale.
+
+Also known as: GS1 DataBar Coupon, U.S. Coupon Code.
+
+Standards: North American Coupon Application Guideline Using GS1 DataBar
+Expanded Symbols, ISO/IEC 24724, GS1 General Specifications.
+
+\hypertarget{data-and-options-41}{%
+\paragraph{Data and Options}\label{data-and-options-41}}
+
+\begin{itemize}
+\tightlist
+\item
+ The data field input is provided in
+ \protect\hyperlink{gs1-application-identifier-standard-format}{GS1
+ Application Identifier standard format} and must be a solitary AI
+ (8110).
+\item
+ The \textbf{segments} option is used to specify the maximum number of
+ segments per row which must be an even number. The default is
+ \emph{4}.
+\end{itemize}
+
+\hypertarget{examples-31}{%
+\paragraph{Examples}\label{examples-31}}
+
+\begin{verbatim}
+Data: (8110)106141416543213500110000310123196000
+Options: includetext segments=8
+Encoder: gs1northamericancoupon
+\end{verbatim}
+
+\includegraphics{images/gs1northamericancoupon-1.eps}
+
+\hypertarget{postal-symbols}{%
+\subsection{Postal Symbols}\label{postal-symbols}}
+\hypertarget{australia-post-4-state-customer-code}{%
\subsubsection{Australia Post 4 State Customer
-Code}\label{australia-post-4-state-customer-code}
+Code}\label{australia-post-4-state-customer-code}}
The \textbf{Australia Post 4 State Customer Code} is a barcode used by
the Australian Postal Service to encode the data on letter mail.
-\paragraph{Data and Options}\label{data-and-options-35}
+\hypertarget{data-and-options-42}{%
+\paragraph{Data and Options}\label{data-and-options-42}}
\begin{itemize}
\tightlist
@@ -2607,20 +3418,23 @@ the Australian Postal Service to encode the data on letter mail.
Otherwise the customer information field is encoded using the
default character encoding, \texttt{custinfoenc=character}, which
permits any of the following characters:
- \item
- Upper case letters \texttt{A-Z}
- \item
- Lower case letters \texttt{a-z}
- \item
- Digits \texttt{0-9}
- \item
- Symbols \texttt{space} and \texttt{\#}
+
+ \begin{itemize}
+ \tightlist
+ \item
+ Upper case letters \texttt{A-Z}
+ \item
+ Lower case letters \texttt{a-z}
+ \item
+ Digits \texttt{0-9}
+ \item
+ Symbols \texttt{space} and \texttt{\#}
+ \end{itemize}
\end{itemize}
-\item
- The maditory Reed-Solomon check bars are calculated automatically.
\end{itemize}
-\paragraph{Examples}\label{examples-28}
+\hypertarget{examples-32}{%
+\paragraph{Examples}\label{examples-32}}
FCC 62 symbol with character customer data:
@@ -2642,7 +3456,8 @@ Encoder: auspost
\includegraphics{images/auspost-2.eps}
-\subsubsection{Deutsche Post Identcode}\label{deutsche-post-identcode}
+\hypertarget{deutsche-post-identcode}{%
+\subsubsection{Deutsche Post Identcode}\label{deutsche-post-identcode}}
\textbf{Deutsche Post Identcode} is an implementation of the
\protect\hyperlink{interleaved-2-of-5}{Interleaved 2 of 5} barcode
@@ -2650,7 +3465,8 @@ symbology that is used by German Post for mail routing.
Also known as: DHL Identcode.
-\paragraph{Data and Options}\label{data-and-options-36}
+\hypertarget{data-and-options-43}{%
+\paragraph{Data and Options}\label{data-and-options-43}}
\begin{itemize}
\tightlist
@@ -2671,10 +3487,11 @@ Also known as: DHL Identcode.
\end{itemize}
\item
If eleven digits are supplied then the check digit is calculated
- automatically. Otherwise the provided check digit must be correct.
+ automatically. Otherwise the provided check digit will be verified.
\end{itemize}
-\paragraph{Example}\label{example-5}
+\hypertarget{example-8}{%
+\paragraph{Example}\label{example-8}}
Identical symbols, input provided with an without a check digit:
@@ -2692,7 +3509,8 @@ Encoder: identcode
\includegraphics{images/identcode-1.eps}
-\subsubsection{Deutsche Post Leitcode}\label{deutsche-post-leitcode}
+\hypertarget{deutsche-post-leitcode}{%
+\subsubsection{Deutsche Post Leitcode}\label{deutsche-post-leitcode}}
The \textbf{Deutsche Post Leitcode} barcode symbology is an
implementation of the \protect\hyperlink{interleaved-2-of-5}{Interleaved
@@ -2700,7 +3518,8 @@ implementation of the \protect\hyperlink{interleaved-2-of-5}{Interleaved
Also known as: DHL Leitcode.
-\paragraph{Data and Options}\label{data-and-options-37}
+\hypertarget{data-and-options-44}{%
+\paragraph{Data and Options}\label{data-and-options-44}}
\begin{itemize}
\tightlist
@@ -2723,10 +3542,11 @@ Also known as: DHL Leitcode.
\end{itemize}
\item
If thirteen digits are supplied then the check digit is calculated
- automatically. Otherwise the provided check digit must be correct.
+ automatically. Otherwise the provided check digit will be verified.
\end{itemize}
-\paragraph{Examples}\label{examples-29}
+\hypertarget{examples-33}{%
+\paragraph{Examples}\label{examples-33}}
Identical symbols, input provided with and without a check digit:
@@ -2744,13 +3564,15 @@ Encoder: leitcode
\includegraphics{images/leitcode-1.eps}
+\hypertarget{japan-post-4-state-barcode}{%
\subsubsection{Japan Post 4 State
-Barcode}\label{japan-post-4-state-barcode}
+Barcode}\label{japan-post-4-state-barcode}}
The \textbf{Japan Post 4 state barcode} symbology is used by the Japan
Post service to encode the delivery point identifier on letter mail.
-\paragraph{Data and Options}\label{data-and-options-38}
+\hypertarget{data-and-options-45}{%
+\paragraph{Data and Options}\label{data-and-options-45}}
\begin{itemize}
\tightlist
@@ -2768,7 +3590,8 @@ Post service to encode the delivery point identifier on letter mail.
\end{itemize}
\end{itemize}
-\paragraph{Example}\label{example-6}
+\hypertarget{example-9}{%
+\paragraph{Example}\label{example-9}}
\begin{verbatim}
Data: 6540123789-A-K-Z
@@ -2778,17 +3601,19 @@ Encoder: japanpost
\includegraphics{images/japanpost-1.eps}
-\subsubsection{MaxiCode}\label{maxicode}
+\hypertarget{maxicode}{%
+\subsubsection{MaxiCode}\label{maxicode}}
The \textbf{MaxiCode} barcode symbology is a 2D barcode based on a
hexagonal matrix surrounding a bulls eye pattern. It can encode a
structured carrier message and full 256 character extended-ASCII.
-Also known as: UPS Code, Code 6.
+Also known as: UPS Code, Code 6, Dense Code.
Standards: ISO/IEC 16023, ANSI/AIM BC10 - ISS MaxiCode.
-\paragraph{Data and Options}\label{data-and-options-39}
+\hypertarget{data-and-options-46}{%
+\paragraph{Data and Options}\label{data-and-options-46}}
\begin{itemize}
\tightlist
@@ -2805,9 +3630,11 @@ Standards: ISO/IEC 16023, ANSI/AIM BC10 - ISS MaxiCode.
\texttt{mode=3} - Formatted data containing a Structured Carrier
Message with an alphanumeric (international) postal code.
\item
- \texttt{mode=4} - Unstructured data using standard error correction.
+ \texttt{mode=4} - Unstructured extended ASCII data using standard
+ error correction.
\item
- \texttt{mode=5} - Unstructured data using enhanced error correction.
+ \texttt{mode=5} - Unstructured extended ASCII data using enhanced
+ error correction.
\item
\texttt{mode=6} - Barcode reader programming.
\end{itemize}
@@ -2817,10 +3644,23 @@ Standards: ISO/IEC 16023, ANSI/AIM BC10 - ISS MaxiCode.
enhanced error correction, otherwise it will select \texttt{mode=4}
which provides standard error correction.
\item
+ The default interpretation of data by readers is in accordance with
+ ISO/IEC 8859-1. When supported by the receiver characters from other
+ code pages can be encoded using Extended Channel Interpretation (ECI).
+\item
When the \textbf{parse} option is specified, any instances of
\texttt{\^{}NNN} in the data field are replaced with their equivalent
ASCII value, useful for specifying unprintable characters.
\item
+ When the \textbf{parsefnc} option is specified, non-data function
+ characters can be specified by escape sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}ECI000000} to \texttt{\^{}ECI999999}: ECI indicators
+ \end{itemize}
+\item
If \texttt{mode=4}, \texttt{mode=5} or \texttt{mode=6} the data field
may contain any extended ASCII data.
\item
@@ -2846,7 +3686,8 @@ Standards: ISO/IEC 16023, ANSI/AIM BC10 - ISS MaxiCode.
by the structured carrier message.
\end{itemize}
-\paragraph{Examples}\label{examples-30}
+\hypertarget{examples-34}{%
+\paragraph{Examples}\label{examples-34}}
\begin{verbatim}
Data: This is MaxiCode
@@ -2886,16 +3727,18 @@ Encoder: maxicode
\includegraphics{images/maxicode-4.eps}
+\hypertarget{royal-mail-4-state-customer-code}{%
\subsubsection{Royal Mail 4 State Customer
-Code}\label{royal-mail-4-state-customer-code}
+Code}\label{royal-mail-4-state-customer-code}}
The \textbf{Royal Mail 4 State Customer Code} is a barcode symbology
used by the British Postal Service to encode the postcode and delivery
point identifier on letter mail.
-Also known as: RM4SCC, CBC.
+Also known as: RM4SCC, CBC, BPO 4 State Code
-\paragraph{Data and Options}\label{data-and-options-40}
+\hypertarget{data-and-options-47}{%
+\paragraph{Data and Options}\label{data-and-options-47}}
\begin{itemize}
\tightlist
@@ -2915,7 +3758,8 @@ Also known as: RM4SCC, CBC.
be included in the data field
\end{itemize}
-\paragraph{Example}\label{example-7}
+\hypertarget{example-10}{%
+\paragraph{Example}\label{example-10}}
\begin{verbatim}
Data: LE28HS9Z
@@ -2925,16 +3769,53 @@ Encoder: royalmail
\includegraphics{images/rm4scc-1.eps}
+\hypertarget{royal-mail-mailmark}{%
+\subsubsection{Royal Mail Mailmark}\label{royal-mail-mailmark}}
+
+\textbf{Royal Mail Mailmark} is an implementation of the
+\protect\hyperlink{data-matrix}{Data Matrix} (ECC 200) barcode symbology
+for application within the Royal Mail postal system.
+
+Standards: Royal Mail Mailmark Barcode Definition Document
+
+\hypertarget{data-and-options-48}{%
+\paragraph{Data and Options}\label{data-and-options-48}}
+
+\begin{itemize}
+\tightlist
+\item
+ The data field input consists of 45 characters of Mailmark structured
+ data (including required space padding) followed by variable-length,
+ free-formatted customer data.
+\item
+ Note: Due to the fixed-length field format of the message data it is
+ important to carefully preserve spaces in the data field.
+\item
+ The mandatory \textbf{type} option is used to specify the size of the
+ symbol, either \texttt{7}, \texttt{9} or \texttt{29}.
+\end{itemize}
+
+\hypertarget{example-11}{%
+\paragraph{Example}\label{example-11}}
+
+\begin{verbatim}
+Data: JGB 012100123412345678AB19XY1A 0 www.xyz.com
+Options: type=29
+Encoder: mailmark
+\end{verbatim}
+
+\hypertarget{royal-tnt-post-4-state-barcode}{%
\subsubsection{Royal TNT Post 4 state
-barcode}\label{royal-tnt-post-4-state-barcode}
+barcode}\label{royal-tnt-post-4-state-barcode}}
The \textbf{Royal TNT Post 4 state barcode} symbology is used by the
Dutch Postal Service to encode the delivery point identifier on letter
mail.
-Also known as: KIX.
+Also known as: KIX, Klant IndeX.
-\paragraph{Data and Options}\label{data-and-options-41}
+\hypertarget{data-and-options-49}{%
+\paragraph{Data and Options}\label{data-and-options-49}}
\begin{itemize}
\tightlist
@@ -2950,7 +3831,8 @@ Also known as: KIX.
\end{itemize}
\end{itemize}
-\paragraph{Example}\label{example-8}
+\hypertarget{example-12}{%
+\paragraph{Example}\label{example-12}}
\begin{verbatim}
Data: 1231FZ13XHS
@@ -2960,7 +3842,8 @@ Encoder: kix
\includegraphics{images/kix-1.eps}
-\subsubsection{USPS Intelligent Mail}\label{usps-intelligent-mail}
+\hypertarget{usps-intelligent-mail}{%
+\subsubsection{USPS Intelligent Mail}\label{usps-intelligent-mail}}
The \textbf{USPS Intelligent Mail} barcode is used by the US Postal
service to encode the delivery and sender information on letter mail.
@@ -2969,7 +3852,8 @@ Also known as: USPS OneCode.
Standards: USPS-STD-11.
-\paragraph{Data and Options}\label{data-and-options-42}
+\hypertarget{data-and-options-50}{%
+\paragraph{Data and Options}\label{data-and-options-50}}
\begin{itemize}
\tightlist
@@ -2993,7 +3877,8 @@ Standards: USPS-STD-11.
be included in the data field.
\end{itemize}
-\paragraph{Example}\label{example-9}
+\hypertarget{example-13}{%
+\paragraph{Example}\label{example-13}}
\begin{verbatim}
Data: 0123456709498765432101234567891
@@ -3003,12 +3888,14 @@ Encoder: onecode
\includegraphics{images/onecode-1.eps}
-\subsubsection{USPS POSTNET}\label{usps-postnet}
+\hypertarget{usps-postnet}{%
+\subsubsection{USPS POSTNET}\label{usps-postnet}}
The \textbf{USPS POSTNET} barcode symbology is used by the US Postal
service to encode the ZIP code information on letter mail.
-\paragraph{Data and Options}\label{data-and-options-43}
+\hypertarget{data-and-options-51}{%
+\paragraph{Data and Options}\label{data-and-options-51}}
\begin{itemize}
\tightlist
@@ -3019,7 +3906,8 @@ service to encode the ZIP code information on letter mail.
included in the data field.
\end{itemize}
-\paragraph{Example}\label{example-10}
+\hypertarget{example-14}{%
+\paragraph{Example}\label{example-14}}
\begin{verbatim}
Data: 12345123412
@@ -3029,12 +3917,14 @@ Encoder: postnet
\includegraphics{images/postnet-1.eps}
-\subsubsection{USPS PLANET}\label{usps-planet}
+\hypertarget{usps-planet}{%
+\subsubsection{USPS PLANET}\label{usps-planet}}
The \textbf{USPS PLANET} barcode symbology is used by the US Postal
service to encode the ZIP code information on letter mail.
-\paragraph{Data and Options}\label{data-and-options-44}
+\hypertarget{data-and-options-52}{%
+\paragraph{Data and Options}\label{data-and-options-52}}
\begin{itemize}
\tightlist
@@ -3045,7 +3935,8 @@ service to encode the ZIP code information on letter mail.
included in the data field.
\end{itemize}
-\paragraph{Example}\label{example-11}
+\hypertarget{example-15}{%
+\paragraph{Example}\label{example-15}}
\begin{verbatim}
Data: 01234567890
@@ -3055,12 +3946,14 @@ Encoder: planet
\includegraphics{images/planet-1.eps}
-\subsubsection{USPS FIM Symbols}\label{usps-fim-symbols}
+\hypertarget{usps-fim-symbols}{%
+\subsubsection{USPS FIM Symbols}\label{usps-fim-symbols}}
The \textbf{USPS FIM} encoder is used to generate static predefined
barcode symbols.
-\paragraph{Data and Options}\label{data-and-options-45}
+\hypertarget{data-and-options-53}{%
+\paragraph{Data and Options}\label{data-and-options-53}}
\begin{itemize}
\tightlist
@@ -3080,7 +3973,8 @@ barcode symbols.
\end{itemize}
\end{itemize}
-\paragraph{Examples}\label{examples-31}
+\hypertarget{examples-35}{%
+\paragraph{Examples}\label{examples-35}}
A USPS FIM A symbol:
@@ -3122,16 +4016,19 @@ Encoder: symbol
\includegraphics{images/fimd-1.eps}
-\subsection{Pharmaceutical Symbols}\label{pharmaceutical-symbols}
+\hypertarget{pharmaceutical-symbols}{%
+\subsection{Pharmaceutical Symbols}\label{pharmaceutical-symbols}}
-\subsubsection{Italian Pharmacode}\label{italian-pharmacode}
+\hypertarget{italian-pharmacode}{%
+\subsubsection{Italian Pharmacode}\label{italian-pharmacode}}
\textbf{Italian Pharmacode} is a discrete, fixed length, self-checking
barcode symbology used for pharmaceutical products in Italy.
Also known as: Code 32, IMH, Radix 32.
-\paragraph{Data and Options}\label{data-and-options-46}
+\hypertarget{data-and-options-54}{%
+\paragraph{Data and Options}\label{data-and-options-54}}
\begin{itemize}
\tightlist
@@ -3141,10 +4038,11 @@ Also known as: Code 32, IMH, Radix 32.
omitted.
\item
The mandatory check digit is calculated automatically if it is not
- provided.
+ provided, otherwise the provided check digit is verified.
\end{itemize}
-\paragraph{Examples}\label{examples-32}
+\hypertarget{examples-36}{%
+\paragraph{Examples}\label{examples-36}}
Identical symbols, input provided with and without a check digit:
@@ -3162,12 +4060,13 @@ Encoder: code32
\includegraphics{images/code32-1.eps}
-\hypertarget{pharmacode}{\subsubsection{Pharmacode}\label{pharmacode}}
+\hypertarget{pharmacode}{%
+\subsubsection{Pharmacode}\label{pharmacode}}
\textbf{Pharmacode} is a binary barcode symbology that is used by the
Pharmaceutical industry.
-Also known as: Pharmaceutical Binary Code.
+Also known as: Pharmaceutical Binary Code. Laetus Code.
Variants:
@@ -3178,7 +4077,8 @@ Variants:
variant of the Pharmacode barcode.
\end{itemize}
-\paragraph{Data and Options}\label{data-and-options-47}
+\hypertarget{data-and-options-55}{%
+\paragraph{Data and Options}\label{data-and-options-55}}
\begin{itemize}
\tightlist
@@ -3191,7 +4091,8 @@ Variants:
wide bars and inter-bar spaces respectively.
\end{itemize}
-\paragraph{Example}\label{example-12}
+\hypertarget{example-16}{%
+\paragraph{Example}\label{example-16}}
\begin{verbatim}
Data: 117480
@@ -3201,13 +4102,14 @@ Encoder: pharmacode
\includegraphics{images/pharmacode-1.eps}
-\hypertarget{two-track-pharmacode}{\subsubsection{Two-Track
-Pharmacode}\label{two-track-pharmacode}}
+\hypertarget{two-track-pharmacode}{%
+\subsubsection{Two-Track Pharmacode}\label{two-track-pharmacode}}
\textbf{Two-Track Pharmacode} is a binary barcode symbology used by the
Pharmaceutical industry.
-Also known as: Two-track Pharmaceutical Binary Code.
+Also known as: Two-track Pharmaceutical Binary Code, Two-track Laetus
+Code.
Variants:
@@ -3218,7 +4120,8 @@ Variants:
Two-track Pharmacode barcode.
\end{itemize}
-\paragraph{Data and Options}\label{data-and-options-48}
+\hypertarget{data-and-options-56}{%
+\paragraph{Data and Options}\label{data-and-options-56}}
\begin{itemize}
\tightlist
@@ -3227,7 +4130,8 @@ Variants:
\texttt{64570080} inclusive.
\end{itemize}
-\paragraph{Example}\label{example-13}
+\hypertarget{example-17}{%
+\paragraph{Example}\label{example-17}}
\begin{verbatim}
Data: 117480
@@ -3237,7 +4141,8 @@ Encoder: pharmacode2
\includegraphics{images/pharmacode2-1.eps}
-\subsubsection{PZN}\label{pzn}
+\hypertarget{pzn}{%
+\subsubsection{PZN}\label{pzn}}
\textbf{PZN} is a discrete, fixed length, self-checking barcode
symbology used for pharmaceutical products in Germany.
@@ -3249,12 +4154,13 @@ Variants:
\begin{itemize}
\tightlist
\item
- PZN-7.
+ PZN7 is the seven-digit format.
\item
- PZN-8.
+ PZN8 is the eight-digit format.
\end{itemize}
-\paragraph{Data and Options}\label{data-and-options-49}
+\hypertarget{data-and-options-57}{%
+\paragraph{Data and Options}\label{data-and-options-57}}
\begin{itemize}
\tightlist
@@ -3265,13 +4171,15 @@ Variants:
The \textbf{pzn8} option specifies that a PZN8 symbol is required, in
which case the data field must contain seven digits or eight digits.
\item
- The mandatory check digit is calculated automatically if not provided.
+ The mandatory check digit is calculated automatically if not provided,
+ otherwise the provided check digit is verified.
\item
Note: by definition, not all six-digit or seven-digit number sequences
are valid inputs.
\end{itemize}
-\paragraph{Examples}\label{examples-33}
+\hypertarget{examples-37}{%
+\paragraph{Examples}\label{examples-37}}
Identical PZN7 symbols, input provided with and without a check digit:
@@ -3305,8 +4213,8 @@ Encoder: pzn
\includegraphics{images/pzn-2.eps}
-\hypertarget{hibc-symbols}{\subsection{HIBC
-Symbols}\label{hibc-symbols}}
+\hypertarget{hibc-symbols}{%
+\subsection{HIBC Symbols}\label{hibc-symbols}}
\textbf{HIBC barcodes} use a number of general symbologies as carrier
symbols for data structured according to the LIC and PAS structured data
@@ -3343,7 +4251,8 @@ Standards: ANSI/HIBC Provider Applications Standard, ANSI/HIBC Supplier
Labelling Standard, ANSI/HIBC Positive Identification for Patient
Safety, ANSI/HIBC Syntax Standard.
-\paragraph{Data and Options}\label{data-and-options-50}
+\hypertarget{data-and-options-58}{%
+\paragraph{Data and Options}\label{data-and-options-58}}
\begin{itemize}
\tightlist
@@ -3357,8 +4266,8 @@ Safety, ANSI/HIBC Syntax Standard.
input.
\end{itemize}
-\hypertarget{hibc-code-39}{\subsubsection{HIBC Code
-39}\label{hibc-code-39}}
+\hypertarget{hibc-code-39}{%
+\subsubsection{HIBC Code 39}\label{hibc-code-39}}
\begin{verbatim}
Data: A123BJC5D6E71
@@ -3368,8 +4277,8 @@ Encoder: hibccode39
\includegraphics{images/hibccode39-1.eps}
-\hypertarget{hibc-code-128}{\subsubsection{HIBC Code
-128}\label{hibc-code-128}}
+\hypertarget{hibc-code-128}{%
+\subsubsection{HIBC Code 128}\label{hibc-code-128}}
\begin{verbatim}
Data: A123BJC5D6E71
@@ -3379,8 +4288,8 @@ Encoder: hibccode128
\includegraphics{images/hibccode128-1.eps}
-\hypertarget{hibc-pdf417}{\subsubsection{HIBC
-PDF417}\label{hibc-pdf417}}
+\hypertarget{hibc-pdf417}{%
+\subsubsection{HIBC PDF417}\label{hibc-pdf417}}
\begin{verbatim}
Data: A123BJC5D6E71
@@ -3390,8 +4299,8 @@ Encoder: hibcpdf417
\includegraphics{images/hibcpdf417-1.eps}
-\hypertarget{hibc-micropdf417}{\subsubsection{HIBC
-MicroPDF417}\label{hibc-micropdf417}}
+\hypertarget{hibc-micropdf417}{%
+\subsubsection{HIBC MicroPDF417}\label{hibc-micropdf417}}
\begin{verbatim}
Data: A123BJC5D6E71
@@ -3401,8 +4310,8 @@ Encoder: hibcmicropdf417
\includegraphics{images/hibcmicropdf417-1.eps}
-\hypertarget{hibc-qr-code}{\subsubsection{HIBC QR
-Code}\label{hibc-qr-code}}
+\hypertarget{hibc-qr-code}{%
+\subsubsection{HIBC QR Code}\label{hibc-qr-code}}
\begin{verbatim}
Data: A123BJC5D6E71
@@ -3412,8 +4321,8 @@ Encoder: hibcqrcode
\includegraphics{images/hibcqrcode-1.eps}
-\hypertarget{hibc-data-matrix}{\subsubsection{HIBC Data
-Matrix}\label{hibc-data-matrix}}
+\hypertarget{hibc-data-matrix}{%
+\subsubsection{HIBC Data Matrix}\label{hibc-data-matrix}}
\begin{verbatim}
Data: A123BJC5D6E71
@@ -3423,8 +4332,8 @@ Encoder: hibcdatamatrix
\includegraphics{images/hibcdatamatrix-1.eps}
-\hypertarget{hibc-codablock-f}{\subsubsection{HIBC Codablock
-F}\label{hibc-codablock-f}}
+\hypertarget{hibc-codablock-f}{%
+\subsubsection{HIBC Codablock F}\label{hibc-codablock-f}}
\begin{verbatim}
Data: A123BJC5D6E71
@@ -3434,9 +4343,11 @@ Encoder: hibccodablockf
\includegraphics{images/hibccodablockf-1.eps}
-\subsection{Less-used Symbols}\label{less-used-symbols}
+\hypertarget{less-used-symbols}{%
+\subsection{Less-used Symbols}\label{less-used-symbols}}
-\subsubsection{BC412}\label{bc412}
+\hypertarget{bc412}{%
+\subsubsection{BC412}\label{bc412}}
The \textbf{BC412} barcode symbology is single width, variable length
barcode that is used for silicon wafer identification by the
@@ -3444,7 +4355,8 @@ semiconductor manufacturing industry.
Also known as: BC412 SEMI, BC412 IBM.
-\paragraph{Data and Options}\label{data-and-options-51}
+\hypertarget{data-and-options-59}{%
+\paragraph{Data and Options}\label{data-and-options-59}}
\begin{itemize}
\tightlist
@@ -3474,7 +4386,8 @@ Also known as: BC412 SEMI, BC412 IBM.
bars.
\end{itemize}
-\paragraph{Examples}\label{examples-34}
+\hypertarget{examples-38}{%
+\paragraph{Examples}\label{examples-38}}
\begin{verbatim}
Data: BC412
@@ -3500,7 +4413,8 @@ Encoder: bc412
\includegraphics{images/bc412-3.eps}
-\subsubsection{Channel Code}\label{channel-code}
+\hypertarget{channel-code}{%
+\subsubsection{Channel Code}\label{channel-code}}
\textbf{Channel Code} is a linear, continuous, self-checking,
bidirectional barcode symbology that encodes between two and seven
@@ -3508,7 +4422,8 @@ digits in a short space.
Standards: ANSI/AIM BC12 - USS Channel Code.
-\paragraph{Data and Options}\label{data-and-options-52}
+\hypertarget{data-and-options-60}{%
+\paragraph{Data and Options}\label{data-and-options-60}}
\begin{itemize}
\tightlist
@@ -3541,7 +4456,8 @@ Standards: ANSI/AIM BC12 - USS Channel Code.
The \textbf{includecheck} option appends an optional check bar suffix.
\end{itemize}
-\paragraph{Examples}\label{examples-35}
+\hypertarget{examples-39}{%
+\paragraph{Examples}\label{examples-39}}
A channel 3 symbol holding the value five:
@@ -3583,7 +4499,8 @@ Encoder: channelcode
\includegraphics{images/channelcode-4.eps}
-\subsubsection{Codabar}\label{codabar}
+\hypertarget{codabar}{%
+\subsubsection{Codabar}\label{codabar}}
\textbf{Codabar} is a linear, discrete, self-checking, bidirectional
barcode symbology that can encode digits, six symbols and four delimiter
@@ -3595,7 +4512,8 @@ USS-Codabar, ABC Codabar, Monarch, Code 2 of 7.
Standards: ANSI/AIM BC3 - USS Codabar, BS EN 798.
-\paragraph{Data and Options}\label{data-and-options-53}
+\hypertarget{data-and-options-61}{%
+\paragraph{Data and Options}\label{data-and-options-61}}
\begin{itemize}
\tightlist
@@ -3630,7 +4548,8 @@ Standards: ANSI/AIM BC3 - USS Codabar, BS EN 798.
characters appear in the human readable text.
\end{itemize}
-\paragraph{Example}\label{example-14}
+\hypertarget{example-18}{%
+\paragraph{Example}\label{example-18}}
\begin{verbatim}
Data: A0123456789B
@@ -3640,8 +4559,8 @@ Encoder: rationalizedCodabar
\includegraphics{images/codabar-1.eps}
-\hypertarget{codablock-f}{\subsubsection{Codablock
-F}\label{codablock-f}}
+\hypertarget{codablock-f}{%
+\subsubsection{Codablock F}\label{codablock-f}}
The \textbf{Codablock F} barcode symbology is 2D stacked-linear barcode
that consists of a number of stacked \protect\hyperlink{code-128}{Code
@@ -3658,12 +4577,15 @@ Variants:
Standards: USS Codablock F.
-\paragraph{Data and Options}\label{data-and-options-54}
+\hypertarget{data-and-options-62}{%
+\paragraph{Data and Options}\label{data-and-options-62}}
\begin{itemize}
\tightlist
\item
- The data field can consist of any extended-ASCII data.
+ The data field can consist of any extended-ASCII data. The default
+ interpretation of data by readers is in accordance with ISO/IEC
+ 8859-1.
\item
\emph{FNC4} function characters will be inserted automatically to
allow the encoding of extended ASCII characters.
@@ -3673,7 +4595,19 @@ Standards: USS Codablock F.
ASCII value, useful for specifying unprintable characters.
\item
When the \textbf{parsefnc} option is specified, non-data function
- characters can be specified by \texttt{\^{}FNC1} or \texttt{\^{}FNC3}.
+ characters can be specified by escape sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}FNC1}: FNC1
+ \item
+ \texttt{\^{}FNC2}: FNC2
+ \item
+ \texttt{\^{}FNC3}: FNC3
+ \item
+ \texttt{\^{}ECI000000} to \texttt{\^{}ECI999999}: ECI indicators
+ \end{itemize}
\item
The \textbf{columns} option specifies the number of columns in the
symbol, default 8.
@@ -3695,7 +4629,8 @@ Standards: USS Codablock F.
bars enclosing the rows in points. The default is 1.
\end{itemize}
-\paragraph{Examples}\label{examples-36}
+\hypertarget{examples-40}{%
+\paragraph{Examples}\label{examples-40}}
\begin{verbatim}
Data: Codablock F
@@ -3721,7 +4656,8 @@ Encoder: codablockf
\includegraphics{images/codablockf-3.eps}
-\subsubsection{Code 11}\label{code-11}
+\hypertarget{code-11}{%
+\subsubsection{Code 11}\label{code-11}}
\textbf{Code 11} is a linear, discrete, non-self-checking,
bidirectional, numeric barcode symbology that is primarily used for
@@ -3729,7 +4665,8 @@ labelling telecommunication equipment.
Also known as: USD-8.
-\paragraph{Data and Options}\label{data-and-options-55}
+\hypertarget{data-and-options-63}{%
+\paragraph{Data and Options}\label{data-and-options-63}}
\begin{itemize}
\tightlist
@@ -3743,7 +4680,8 @@ Also known as: USD-8.
For 10 or more data digits two check digits are used.
\end{itemize}
-\paragraph{Example}\label{example-15}
+\hypertarget{example-19}{%
+\paragraph{Example}\label{example-19}}
\begin{verbatim}
Data: 0123456789
@@ -3753,7 +4691,8 @@ Encoder: code11
\includegraphics{images/code11-1.eps}
-\subsubsection{Code 16K}\label{code-16k}
+\hypertarget{code-16k}{%
+\subsubsection{Code 16K}\label{code-16k}}
The \textbf{Code 16K} barcode symbology is 2D stacked-linear barcode
that can encode full 256 character extended-ASCII with the use of the
@@ -3763,12 +4702,15 @@ Also known as: USS-16K
Standards: ANSI/AIM BC7 - USS Code 16K, BS EN 12323.
-\paragraph{Data and Options}\label{data-and-options-56}
+\hypertarget{data-and-options-64}{%
+\paragraph{Data and Options}\label{data-and-options-64}}
\begin{itemize}
\tightlist
\item
- The input can consist of any 256-bit extended ASCII data.
+ The data field can consist of any extended ASCII data. The default
+ interpretation of data by readers is in accordance with ISO/IEC
+ 8859-1.
\item
\emph{FNC4} function characters will be inserted automatically to
allow the encoding of extended ASCII characters.
@@ -3778,8 +4720,17 @@ Standards: ANSI/AIM BC7 - USS Code 16K, BS EN 12323.
ASCII value, useful for specifying unprintable characters.
\item
When the \textbf{parsefnc} option is specified, non-data function
- characters can be specified by \texttt{\^{}FNC1} through
- \texttt{\^{}FNC3}.
+ characters can be specified by escape sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}FNC1}: FNC1
+ \item
+ \texttt{\^{}FNC2}: FNC2
+ \item
+ \texttt{\^{}FNC3}: FNC3
+ \end{itemize}
\item
The \textbf{mode} option specifies the mode for the symbol. It is
usual to leave this unspecified in which case the most appropriate
@@ -3826,7 +4777,8 @@ Standards: ANSI/AIM BC7 - USS Code 16K, BS EN 12323.
bars enclosing the rows in points. The default is 1.
\end{itemize}
-\paragraph{Examples}\label{examples-37}
+\hypertarget{examples-41}{%
+\paragraph{Examples}\label{examples-41}}
\begin{verbatim}
Data: Abcd-1234567890-wxyZ
@@ -3852,7 +4804,8 @@ Encoder: code16k
\includegraphics{images/code16k-3.eps}
-\hypertarget{code-25}{\subsubsection{Code 25}\label{code-25}}
+\hypertarget{code-25}{%
+\subsubsection{Code 25}\label{code-25}}
\textbf{Code 2 of 5} is a simple low density numeric barcode symbology.
@@ -3873,7 +4826,8 @@ Variants:
\protect\hyperlink{coop-2-of-5}{COOP 2 of 5}.
\end{itemize}
-\paragraph{Data and Options}\label{data-and-options-57}
+\hypertarget{data-and-options-65}{%
+\paragraph{Data and Options}\label{data-and-options-65}}
\begin{itemize}
\tightlist
@@ -3882,7 +4836,8 @@ Variants:
\item
The \textbf{includecheck} option calculates the check digit.
\item
- The \textbf{version} option determines which variant to use:
+ \emph{Deprecated}: The \textbf{version} option determines which
+ variant to use:
\begin{itemize}
\tightlist
@@ -3903,7 +4858,8 @@ Variants:
\end{itemize}
\end{itemize}
-\paragraph{Examples}\label{examples-38}
+\hypertarget{examples-42}{%
+\paragraph{Examples}\label{examples-42}}
\begin{verbatim}
Data: 01234567
@@ -3913,8 +4869,145 @@ Encoder: code2of5
\includegraphics{images/code25-1.eps}
-\hypertarget{iata-2-of-5}{\subsubsection{IATA 2 of
-5}\label{iata-2-of-5}}
+\hypertarget{dotcode}{%
+\subsubsection{DotCode}\label{dotcode}}
+
+The \textbf{DotCode} symbology is 2D matrix-style barcode that can
+encode full 256 character extended-ASCII.
+
+Also known as: Ribbon Code
+
+Variants:
+
+\begin{itemize}
+\tightlist
+\item
+ \protect\hyperlink{gs1-dotcode}{GS1 DotCode} is a variant of DotCode
+ that should be used when encoding data that is in
+ \protect\hyperlink{gs1-application-identifier-standard-format}{GS1
+ Application Identifier standard format}.
+\end{itemize}
+
+Standards: AIM - ISS DotCode.
+
+\hypertarget{data-and-options-66}{%
+\paragraph{Data and Options}\label{data-and-options-66}}
+
+\begin{itemize}
+\tightlist
+\item
+ The data field can contain any extended ASCII data. The default
+ interpretation of data by readers is in accordance with ISO/IEC
+ 8859-1.
+\item
+ When the \textbf{parse} option is specified, any instances of
+ \texttt{\^{}NNN} in the data field are replaced with their equivalent
+ ASCII value. This is useful for specifying unprintable characters.
+\item
+ When the \textbf{parsefnc} option is specified, non-data function
+ characters can be specified by escape sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}FNC1}: FNC1. \emph{Recommendation: Use
+ \protect\hyperlink{gs1-dotcode}{GS1 DotCode} for encoding GS1 AI
+ syntax data.}
+ \item
+ \texttt{\^{}FNC2}: FNC2
+ \item
+ \texttt{\^{}FNC3}: FNC3
+ \end{itemize}
+\item
+ The \textbf{ratio} is used to specify the aspect ratio of the symbol.
+ The default is 1.5.
+\item
+ The \textbf{columns} and \textbf{rows} options are used to specify the
+ size of the symbol. When these are not specified a symbol is generated
+ that maintains the selected aspect ratio.
+\item
+ \emph{Deprecated: Use only if performance is a concern.} The
+ \textbf{fast} option is used to enable the optional high-speed symbol
+ masking algorithm.
+\end{itemize}
+
+\hypertarget{examples-43}{%
+\paragraph{Examples}\label{examples-43}}
+
+\begin{verbatim}
+Data: This is DotCode
+Options: inkspread=0.16
+Encoder: dotcode
+\end{verbatim}
+
+\includegraphics{images/dotcode-1.eps}
+
+\hypertarget{ultracode}{%
+\subsubsection{Ultracode}\label{ultracode}}
+
+The \textbf{Ultracode} symbology is a colour, 2D matrix-style barcode
+symbology that can encode full 256 character extended-ASCII.
+
+Standards: AIM ISS - Ultracode.
+
+\hypertarget{data-and-options-67}{%
+\paragraph{Data and Options}\label{data-and-options-67}}
+
+\begin{itemize}
+\tightlist
+\item
+ The data field can contain any extended ASCII data. The default
+ interpretation of data by readers is in accordance with ISO/IEC
+ 8859-1.
+\item
+ When the \textbf{parse} option is specified, any instances of
+ \texttt{\^{}NNN} in the data field are replaced with their equivalent
+ ASCII value, useful for specifying unprintable characters.
+\item
+ When the \textbf{parsefnc} option is specified, non-data function
+ characters can be specified by escape sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}FNC1}: FNC1
+ \item
+ \texttt{\^{}FNC3}: FNC3
+ \end{itemize}
+\item
+ The \textbf{eclevel} option is used to specify the error correction
+ level:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{eclevel=EC0} - Error detection only
+ \item
+ \texttt{eclevel=EC1} - Low
+ \item
+ \texttt{eclevel=EC2} - Medium (default)
+ \item
+ \texttt{eclevel=EC3}
+ \item
+ \texttt{eclevel=EC4}
+ \item
+ \texttt{eclevel=EC5} - Highest
+ \end{itemize}
+\end{itemize}
+
+\hypertarget{examples-44}{%
+\paragraph{Examples}\label{examples-44}}
+
+\begin{verbatim}
+Data: Nice colours!
+Options: eclevel=EC3
+Encoder: ultracode
+\end{verbatim}
+
+\includegraphics{images/ultracode-1.eps}
+
+\hypertarget{iata-2-of-5}{%
+\subsubsection{IATA 2 of 5}\label{iata-2-of-5}}
\textbf{IATA 2 of 5} is a variant of the
\protect\hyperlink{code-25}{Code 2 of 5} barcode symbology.
@@ -3935,7 +5028,8 @@ Variants:
\protect\hyperlink{coop-2-of-5}{COOP 2 of 5}.
\end{itemize}
-\paragraph{Data and Options}\label{data-and-options-58}
+\hypertarget{data-and-options-68}{%
+\paragraph{Data and Options}\label{data-and-options-68}}
\begin{itemize}
\tightlist
@@ -3945,7 +5039,8 @@ Variants:
The \textbf{includecheck} option calculates the check digit.
\end{itemize}
-\paragraph{Examples}\label{examples-39}
+\hypertarget{examples-45}{%
+\paragraph{Examples}\label{examples-45}}
\begin{verbatim}
Data: 01234567
@@ -3955,8 +5050,8 @@ Encoder: iata2of5
\includegraphics{images/code25-2.eps}
-\hypertarget{matrix-2-of-5}{\subsubsection{Matrix 2 of
-5}\label{matrix-2-of-5}}
+\hypertarget{matrix-2-of-5}{%
+\subsubsection{Matrix 2 of 5}\label{matrix-2-of-5}}
\textbf{Matrix 2 of 5} is a variant of the
\protect\hyperlink{code-25}{Code 2 of 5} barcode symbology.
@@ -3976,7 +5071,8 @@ Variants:
\protect\hyperlink{coop-2-of-5}{COOP 2 of 5}.
\end{itemize}
-\paragraph{Data and Options}\label{data-and-options-59}
+\hypertarget{data-and-options-69}{%
+\paragraph{Data and Options}\label{data-and-options-69}}
\begin{itemize}
\tightlist
@@ -3986,8 +5082,8 @@ Variants:
The \textbf{includecheck} option calculates the check digit.
\end{itemize}
-\hypertarget{datalogic-2-of-5}{\subsubsection{Datalogic 2 of
-5}\label{datalogic-2-of-5}}
+\hypertarget{datalogic-2-of-5}{%
+\subsubsection{Datalogic 2 of 5}\label{datalogic-2-of-5}}
\textbf{Datalogic 2 of 5} is a variant of the
\protect\hyperlink{code-25}{Code 2 of 5} barcode symbology.
@@ -4007,7 +5103,8 @@ Variants:
\protect\hyperlink{coop-2-of-5}{COOP 2 of 5}.
\end{itemize}
-\paragraph{Data and Options}\label{data-and-options-60}
+\hypertarget{data-and-options-70}{%
+\paragraph{Data and Options}\label{data-and-options-70}}
\begin{itemize}
\tightlist
@@ -4017,8 +5114,8 @@ Variants:
The \textbf{includecheck} option calculates the check digit.
\end{itemize}
-\hypertarget{coop-2-of-5}{\subsubsection{COOP 2 of
-5}\label{coop-2-of-5}}
+\hypertarget{coop-2-of-5}{%
+\subsubsection{COOP 2 of 5}\label{coop-2-of-5}}
\textbf{COOP 2 of 5} is a variant of the
\protect\hyperlink{code-25}{Code 2 of 5} barcode symbology.
@@ -4038,7 +5135,8 @@ Variants:
\protect\hyperlink{matrix-2-of-5}{Matrix 2 of 5}.
\end{itemize}
-\paragraph{Data and Options}\label{data-and-options-61}
+\hypertarget{data-and-options-71}{%
+\paragraph{Data and Options}\label{data-and-options-71}}
\begin{itemize}
\tightlist
@@ -4048,7 +5146,8 @@ Variants:
The \textbf{includecheck} option calculates the check digit.
\end{itemize}
-\subsubsection{Code 49}\label{code-49}
+\hypertarget{code-49}{%
+\subsubsection{Code 49}\label{code-49}}
The \textbf{Code 49} barcode symbology is 2D stacked-linear barcode that
can encode 128 character ASCII.
@@ -4057,7 +5156,8 @@ Also known as: USS-49.
Standards: ANSI/AIM BC6 - USS Code 49.
-\paragraph{Data and Options}\label{data-and-options-62}
+\hypertarget{data-and-options-72}{%
+\paragraph{Data and Options}\label{data-and-options-72}}
\begin{itemize}
\tightlist
@@ -4069,8 +5169,17 @@ Standards: ANSI/AIM BC6 - USS Code 49.
ASCII value, useful for specifying unprintable characters.
\item
When the \textbf{parsefnc} option is specified, non-data function
- characters can be specified by \texttt{\^{}FNC1} through
- \texttt{\^{}FNC3}.
+ characters can be specified by escape sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}FNC1}: FNC1
+ \item
+ \texttt{\^{}FNC2}: FNC2
+ \item
+ \texttt{\^{}FNC3}: FNC3
+ \end{itemize}
\item
The \textbf{mode} option specifies the mode for the symbol. It is
usual to leave this unspecified in which case the most appropriate
@@ -4096,7 +5205,7 @@ Standards: ANSI/AIM BC6 - USS Code 49.
\end{itemize}
\item
The \textbf{pos} option specifies this symbol to be part of multi-part
- structured data, i.e.~selecting \texttt{mode=3}. For example
+ structured data, i.e. selecting \texttt{mode=3}. For example
\texttt{pos=25} specifies this to be the second symbol in a group of
five symbols.
\item
@@ -4113,7 +5222,8 @@ Standards: ANSI/AIM BC6 - USS Code 49.
bars enclosing the rows in points. The default is \emph{1}.
\end{itemize}
-\paragraph{Examples}\label{examples-40}
+\hypertarget{examples-46}{%
+\paragraph{Examples}\label{examples-46}}
\begin{verbatim}
Data: MULTIPLE ROWS IN CODE 49
@@ -4139,7 +5249,8 @@ Encoder: code49
\includegraphics{images/code49-3.eps}
-\subsubsection{Code One}\label{code-one}
+\hypertarget{code-one}{%
+\subsubsection{Code One}\label{code-one}}
\textbf{Code One} was the earliest public domain 2D matrix-style
barcode. It is used by the health care and recycling industry and can
@@ -4149,13 +5260,17 @@ Also known as: Code 1, Code 1S.
Standards: AIM USS - Code One.
-\paragraph{Data and Options}\label{data-and-options-63}
+\hypertarget{data-and-options-73}{%
+\paragraph{Data and Options}\label{data-and-options-73}}
\begin{itemize}
\tightlist
\item
The data field can consist of any ASCII data for \emph{standard} and
- \emph{T-type} symbols.
+ \emph{T-type} symbols. The default interpretation of data by readers
+ is in accordance with ISO/IEC 8859-1. When supported by the receiver
+ characters from other code pages can be encoded using Extended Channel
+ Interpretation (ECI).
\item
Note: \emph{S-type} symbols are special in that they represent a
numeric value so may only contain digits.
@@ -4166,7 +5281,17 @@ Standards: AIM USS - Code One.
\texttt{\^{}029} for \emph{GS}, etc.
\item
When the \textbf{parsefnc} option is specified, non-data function
- characters can be specified by \texttt{\^{}FNC1}, \texttt{\^{}FNC3}.
+ characters can be specified by escape sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}FNC1}: FNC1
+ \item
+ \texttt{\^{}FNC3}: FNC3
+ \item
+ \texttt{\^{}ECI000000} to \texttt{\^{}ECI999999}: ECI indicators
+ \end{itemize}
\item
The \textbf{version} option is used to specify the size and type of
the symbol:
@@ -4186,7 +5311,8 @@ Standards: AIM USS - Code One.
\end{itemize}
\end{itemize}
-\paragraph{Examples}\label{examples-41}
+\hypertarget{examples-47}{%
+\paragraph{Examples}\label{examples-47}}
\begin{verbatim}
Data: Code One
@@ -4220,8 +5346,8 @@ Encoder: codeone
\includegraphics{images/codeone-4.eps}
-\hypertarget{msi-plessey}{\subsubsection{MSI
-Plessey}\label{msi-plessey}}
+\hypertarget{msi-plessey}{%
+\subsubsection{MSI Plessey}\label{msi-plessey}}
\textbf{MSI Plessey} is a continuous, non-self-checking, arbitrary
length, numeric barcode symbology.
@@ -4237,7 +5363,8 @@ Variants:
which MSI Modified Plessey was based.
\end{itemize}
-\paragraph{Data and Options}\label{data-and-options-64}
+\hypertarget{data-and-options-74}{%
+\paragraph{Data and Options}\label{data-and-options-74}}
\begin{itemize}
\tightlist
@@ -4276,7 +5403,8 @@ Variants:
correct representation.
\end{itemize}
-\paragraph{Examples}\label{examples-42}
+\hypertarget{examples-48}{%
+\paragraph{Examples}\label{examples-48}}
\begin{verbatim}
Data: 0123456789
@@ -4302,7 +5430,8 @@ Encoder: msi
\includegraphics{images/msi-3.eps}
-\hypertarget{plessey}{\subsubsection{Plessey}\label{plessey}}
+\hypertarget{plessey}{%
+\subsubsection{Plessey}\label{plessey}}
\textbf{Plessey} is a continuous, arbitrary length barcode symbology for
encoding hexadecimal data.
@@ -4318,7 +5447,8 @@ Variants:
the Plessey (UK) barcode developed by the MSI Data Corporation.
\end{itemize}
-\paragraph{Data and Options}\label{data-and-options-65}
+\hypertarget{data-and-options-75}{%
+\paragraph{Data and Options}\label{data-and-options-75}}
\begin{itemize}
\tightlist
@@ -4343,7 +5473,8 @@ Variants:
symbol.
\end{itemize}
-\paragraph{Examples}\label{examples-43}
+\hypertarget{examples-49}{%
+\paragraph{Examples}\label{examples-49}}
Equivalent symbols, the latter displaying the two mandatory check
characters:
@@ -4374,7 +5505,8 @@ Encoder: plessey
\includegraphics{images/plessey-3.eps}
-\subsubsection{PosiCode}\label{posicode}
+\hypertarget{posicode}{%
+\subsubsection{PosiCode}\label{posicode}}
\textbf{PosiCode} is a continuous, variable length, non-self-checking,
bidirectional barcode symbology that is designed for use within printing
@@ -4382,7 +5514,8 @@ processes where it is difficult to precisely control the width of a bar.
Standards: ITS PosiCode.
-\paragraph{Data and Options}\label{data-and-options-66}
+\hypertarget{data-and-options-76}{%
+\paragraph{Data and Options}\label{data-and-options-76}}
\begin{itemize}
\tightlist
@@ -4392,10 +5525,16 @@ Standards: ITS PosiCode.
\begin{itemize}
\tightlist
\item
- For \emph{standard} symbols: Any 256-bit extended ASCII data.
- \item
- \emph{FNC4} function characters will be inserted automatically to
- allow the encoding of extended ASCII characters.
+ For \emph{standard} symbols: Any extended ASCII data. The default
+ interpretation of data by readers is in accordance with ISO/IEC
+ 8859-1.
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \emph{FNC4} function characters will be inserted automatically to
+ allow the encoding of extended ASCII characters.
+ \end{itemize}
\item
For \emph{limited} symbols: letters \texttt{A-Z}, digits
\texttt{0-9}, symbols \texttt{-} and \texttt{.}
@@ -4422,14 +5561,24 @@ Standards: ITS PosiCode.
\texttt{\^{}029} for \emph{GS}, etc.
\item
When the \textbf{parsefnc} option is specified, non-data function
- characters can be specified by \texttt{\^{}FNC1} through
- \texttt{\^{}FNC3}.
+ characters can be specified by escape sequences:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{\^{}FNC1}: FNC1
+ \item
+ \texttt{\^{}FNC2}: FNC2
+ \item
+ \texttt{\^{}FNC3}: FNC3
+ \end{itemize}
\item
The \textbf{inkspread} option can be used to adjust the width of the
bars.
\end{itemize}
-\paragraph{Example PosiCode}\label{example-posicode}
+\hypertarget{example-posicode}{%
+\paragraph{Example PosiCode}\label{example-posicode}}
Equivalent ways to generate a PosiCode A symbol:
@@ -4477,7 +5626,8 @@ Encoder: posicode
\includegraphics{images/posicode-4.eps}
-\paragraph{Example Limited PosiCode}\label{example-limited-posicode}
+\hypertarget{example-limited-posicode}{%
+\paragraph{Example Limited PosiCode}\label{example-limited-posicode}}
Limited PosiCode A with narrowed bars:
@@ -4499,7 +5649,8 @@ Encoder: posicode
\includegraphics{images/posicode-6.eps}
-\hypertarget{telepen}{\subsubsection{Telepen}\label{telepen}}
+\hypertarget{telepen}{%
+\subsubsection{Telepen}\label{telepen}}
\textbf{Telepen} is an arbitrary length barcode symbology for encoding
all 128 ASCII characters without the need for shift characters.
@@ -4516,7 +5667,8 @@ Variants:
Standards: USS Telepen.
-\paragraph{Data and Options}\label{data-and-options-67}
+\hypertarget{data-and-options-77}{%
+\paragraph{Data and Options}\label{data-and-options-77}}
\begin{itemize}
\tightlist
@@ -4536,7 +5688,8 @@ Standards: USS Telepen.
encoded using the \emph{parse} option.}
\end{itemize}
-\paragraph{Examples}\label{examples-44}
+\hypertarget{examples-50}{%
+\paragraph{Examples}\label{examples-50}}
\begin{verbatim}
Data: Telepen
@@ -4554,8 +5707,8 @@ Encoder: telepen
\includegraphics{images/telepen-2.eps}
-\hypertarget{telepen-numeric}{\subsubsection{Telepen
-Numeric}\label{telepen-numeric}}
+\hypertarget{telepen-numeric}{%
+\subsubsection{Telepen Numeric}\label{telepen-numeric}}
\textbf{Telepen Numeric} is a variant of the Telepen symbology for
efficient encoding of numeric data.
@@ -4570,7 +5723,8 @@ Variants:
Standards: USS Telepen.
-\paragraph{Data and Options}\label{data-and-options-68}
+\hypertarget{data-and-options-78}{%
+\paragraph{Data and Options}\label{data-and-options-78}}
\begin{itemize}
\tightlist
@@ -4586,7 +5740,8 @@ Standards: USS Telepen.
The mandatory check digit is automatically included.
\end{itemize}
-\paragraph{Examples}\label{examples-45}
+\hypertarget{examples-51}{%
+\paragraph{Examples}\label{examples-51}}
\begin{verbatim}
Data: 123456
@@ -4612,8 +5767,8 @@ Encoder: telepennumeric
\includegraphics{images/telepen-5.eps}
-\hypertarget{gs1-composite-symbols}{\subsection{GS1 Composite
-Symbols}\label{gs1-composite-symbols}}
+\hypertarget{gs1-composite-symbols}{%
+\subsection{GS1 Composite Symbols}\label{gs1-composite-symbols}}
\textbf{GS1 Composite} barcode symbologies consist of a primary
component beneath a 2D component (variations of
@@ -4677,7 +5832,8 @@ Variants:
Standards: ISO/IEC 24723, ITS EAN.UCC Composite Symbology, AIM ISS -
EAN.UCC Composite Symbology, GS1 General Specifications.
-\paragraph{Data and Options}\label{data-and-options-69}
+\hypertarget{data-and-options-79}{%
+\paragraph{Data and Options}\label{data-and-options-79}}
\begin{itemize}
\tightlist
@@ -4693,6 +5849,13 @@ EAN.UCC Composite Symbology, GS1 General Specifications.
\protect\hyperlink{gs1-application-identifier-standard-format}{GS1
Application Identifier standard format}.
\item
+ Note that it is not necessary to specify \emph{FNC1} characters since
+ the encoder will insert these automatically where necessary.
+\item
+ \emph{Deprecated.} The \textbf{dontlint} option disables GS1
+ Application Identifier syntax validation allowing images to be
+ generated for input that does not comply with GS1 standards.
+\item
For maximum efficiency, if the data for the 2D component contains a
number of application identifiers matching any of the specifications
below then they should be provided in this given order:
@@ -4707,8 +5870,9 @@ EAN.UCC Composite Symbology, GS1 General Specifications.
\texttt{(90)\{0-3\ digits\ not\ starting\ 0\}\{upper\ alpha\}...}
\end{itemize}
\item
- The \textbf{ccversion} option is used to select a specific 2D
- component:
+ \emph{Deprecated: Default is best unless your application dictates
+ otherwise.} The \textbf{ccversion} option is used to select a specific
+ 2D component:
\begin{itemize}
\tightlist
@@ -4719,17 +5883,17 @@ EAN.UCC Composite Symbology, GS1 General Specifications.
\item
\texttt{ccversion=c} - \protect\hyperlink{cc-c}{CC-C}
(\protect\hyperlink{gs1-128-composite}{GS1-128 Composite} only)
+ \item
+ If \textbf{ccversion} is not specified a CC-A component will be
+ selected if the data will fit, otherwise a CC-B component will be
+ used. In the case of \protect\hyperlink{gs1-128-composite}{GS1-128
+ Composite} a CC-C component will be used if the data does not fit
+ within either a CC-A or CC-B component.
\end{itemize}
-\item
- If \textbf{ccversion} is not specified a CC-A component will be
- selected if the data will fit, otherwise a CC-B component will be
- used. In the case of \protect\hyperlink{gs1-128-composite}{GS1-128
- Composite} a CC-C component will be used if the data does not fit
- within either a CC-A or CC-B component.
\end{itemize}
-\hypertarget{ean-13-composite}{\subsubsection{EAN-13
-Composite}\label{ean-13-composite}}
+\hypertarget{ean-13-composite}{%
+\subsubsection{EAN-13 Composite}\label{ean-13-composite}}
\begin{verbatim}
Data: 331234567890|(99)1234-abcd
@@ -4739,8 +5903,8 @@ Encoder: ean13composite
\includegraphics{images/ean13composite-1.eps}
-\hypertarget{ean-8-composite}{\subsubsection{EAN-8
-Composite}\label{ean-8-composite}}
+\hypertarget{ean-8-composite}{%
+\subsubsection{EAN-8 Composite}\label{ean-8-composite}}
\begin{verbatim}
Data: 12345670|(21)A12345678
@@ -4750,8 +5914,8 @@ Encoder: ean8composite
\includegraphics{images/ean8composite-1.eps}
-\hypertarget{upc-a-composite}{\subsubsection{UPC-A
-Composite}\label{upc-a-composite}}
+\hypertarget{upc-a-composite}{%
+\subsubsection{UPC-A Composite}\label{upc-a-composite}}
\begin{verbatim}
Data: 01600033610|(99)1234-abcd
@@ -4761,8 +5925,8 @@ Encoder: upcacomposite
\includegraphics{images/upcacomposite-1.eps}
-\hypertarget{upc-e-composite}{\subsubsection{UPC-E
-Composite}\label{upc-e-composite}}
+\hypertarget{upc-e-composite}{%
+\subsubsection{UPC-E Composite}\label{upc-e-composite}}
\begin{verbatim}
Data: 0121230|(15)021231
@@ -4772,8 +5936,8 @@ Encoder: upcecomposite
\includegraphics{images/upcecomposite-1.eps}
-\hypertarget{gs1-databar-omnidirectional-composite}{\subsubsection{GS1
-DataBar Omnidirectional
+\hypertarget{gs1-databar-omnidirectional-composite}{%
+\subsubsection{GS1 DataBar Omnidirectional
Composite}\label{gs1-databar-omnidirectional-composite}}
\begin{verbatim}
@@ -4784,8 +5948,8 @@ Encoder: databaromnicomposite
\includegraphics{images/databaromnicomposite-1.eps}
-\hypertarget{gs1-databar-stacked-omnidirectional-composite}{\subsubsection{GS1
-DataBar Stacked Omnidirectional
+\hypertarget{gs1-databar-stacked-omnidirectional-composite}{%
+\subsubsection{GS1 DataBar Stacked Omnidirectional
Composite}\label{gs1-databar-stacked-omnidirectional-composite}}
\begin{verbatim}
@@ -4796,8 +5960,9 @@ Encoder: databarstackedomnicomposite
\includegraphics{images/databarstackedomnicomposite-1.eps}
-\hypertarget{gs1-databar-expanded-composite}{\subsubsection{GS1 DataBar
-Expanded Composite}\label{gs1-databar-expanded-composite}}
+\hypertarget{gs1-databar-expanded-composite}{%
+\subsubsection{GS1 DataBar Expanded
+Composite}\label{gs1-databar-expanded-composite}}
\begin{verbatim}
Data: (01)93712345678904(3103)001234|(91)1A2B3C4D5E
@@ -4807,8 +5972,8 @@ Encoder: databarexpandedcomposite
\includegraphics{images/databarexpandedcomposite-1.eps}
-\hypertarget{gs1-databar-expanded-stacked-composite}{\subsubsection{GS1
-DataBar Expanded Stacked
+\hypertarget{gs1-databar-expanded-stacked-composite}{%
+\subsubsection{GS1 DataBar Expanded Stacked
Composite}\label{gs1-databar-expanded-stacked-composite}}
\begin{verbatim}
@@ -4819,8 +5984,9 @@ Encoder: databarexpandedstackedcomposite
\includegraphics{images/databarexpandedstackedcomposite-1.eps}
-\hypertarget{gs1-databar-truncated-composite}{\subsubsection{GS1 DataBar
-Truncated Composite}\label{gs1-databar-truncated-composite}}
+\hypertarget{gs1-databar-truncated-composite}{%
+\subsubsection{GS1 DataBar Truncated
+Composite}\label{gs1-databar-truncated-composite}}
\begin{verbatim}
Data: (01)03612345678904|(11)990102
@@ -4830,8 +5996,9 @@ Encoder: databartruncatedcomposite
\includegraphics{images/databartruncatedcomposite-1.eps}
-\hypertarget{gs1-databar-stacked-composite}{\subsubsection{GS1 DataBar
-Stacked Composite}\label{gs1-databar-stacked-composite}}
+\hypertarget{gs1-databar-stacked-composite}{%
+\subsubsection{GS1 DataBar Stacked
+Composite}\label{gs1-databar-stacked-composite}}
\begin{verbatim}
Data: (01)03412345678900|(17)010200
@@ -4841,8 +6008,9 @@ Encoder: databarstackedcomposite
\includegraphics{images/databarstackedcomposite-1.eps}
-\hypertarget{gs1-databar-limited-composite}{\subsubsection{GS1 DataBar
-Limited Composite}\label{gs1-databar-limited-composite}}
+\hypertarget{gs1-databar-limited-composite}{%
+\subsubsection{GS1 DataBar Limited
+Composite}\label{gs1-databar-limited-composite}}
\begin{verbatim}
Data: (01)03512345678907|(21)abcdefghijklmnopqrstuv
@@ -4852,8 +6020,8 @@ Encoder: databarlimitedcomposite
\includegraphics{images/databarlimitedcomposite-1.eps}
-\hypertarget{gs1-128-composite}{\subsubsection{GS1-128
-Composite}\label{gs1-128-composite}}
+\hypertarget{gs1-128-composite}{%
+\subsubsection{GS1-128 Composite}\label{gs1-128-composite}}
GS1-128 Composite with a CC-A 2D component:
@@ -4875,7 +6043,8 @@ Encoder: gs1-128composite
\includegraphics{images/ean128composite-2.eps}
-\hypertarget{cc-a}{\subsubsection{CC-A}\label{cc-a}}
+\hypertarget{cc-a}{%
+\subsubsection{CC-A}\label{cc-a}}
Isolated CC-A 2D component:
@@ -4887,7 +6056,8 @@ Encoder: gs1-cc
\includegraphics{images/gs1composite-1.eps}
-\hypertarget{cc-b}{\subsubsection{CC-B}\label{cc-b}}
+\hypertarget{cc-b}{%
+\subsubsection{CC-B}\label{cc-b}}
Isolated CC-B 2D component:
@@ -4899,7 +6069,8 @@ Encoder: gs1-cc
\includegraphics{images/gs1composite-2.eps}
-\hypertarget{cc-c}{\subsubsection{CC-C}\label{cc-c}}
+\hypertarget{cc-c}{%
+\subsubsection{CC-C}\label{cc-c}}
Isolated CC-C 2D component:
@@ -4911,15 +6082,18 @@ Encoder: gs1-cc
\includegraphics{images/gs1composite-3.eps}
-\subsection{Raw Symbols}\label{raw-symbols}
+\hypertarget{raw-symbols}{%
+\subsection{Raw Symbols}\label{raw-symbols}}
-\subsubsection{DAFT}\label{daft}
+\hypertarget{daft}{%
+\subsubsection{DAFT}\label{daft}}
\textbf{DAFT} is an encoder for directly specifying the descender,
ascender, full-height, tracker-bar succession for a custom 4 state
barcode symbol.
-\paragraph{Data and Options}\label{data-and-options-70}
+\hypertarget{data-and-options-80}{%
+\paragraph{Data and Options}\label{data-and-options-80}}
\begin{itemize}
\tightlist
@@ -4929,7 +6103,8 @@ barcode symbol.
ascender, full-height and tracker bars of a custom 4 state symbol.
\end{itemize}
-\paragraph{Example}\label{example-16}
+\hypertarget{example-20}{%
+\paragraph{Example}\label{example-20}}
\begin{verbatim}
Data: FATDAFTDAD
@@ -4939,13 +6114,15 @@ Encoder: daft
\includegraphics{images/daft-1.eps}
-\subsubsection{Flattermarken}\label{flattermarken}
+\hypertarget{flattermarken}{%
+\subsubsection{Flattermarken}\label{flattermarken}}
\textbf{Flattermarken} are identification marks used in book production
that facilitate the proper arrangement of bound sections by a book
binder.
-\paragraph{Data and Options}\label{data-and-options-71}
+\hypertarget{data-and-options-81}{%
+\paragraph{Data and Options}\label{data-and-options-81}}
\begin{itemize}
\tightlist
@@ -4969,7 +6146,8 @@ binder.
encoder should be used instead.
\end{itemize}
-\paragraph{Example}\label{example-17}
+\hypertarget{example-21}{%
+\paragraph{Example}\label{example-21}}
\begin{verbatim}
Data: 1304
@@ -4979,12 +6157,14 @@ Encoder: flattermarken
\includegraphics{images/flattermarken-1.eps}
-\hypertarget{raw}{\subsubsection{Raw}\label{raw}}
+\hypertarget{raw}{%
+\subsubsection{Raw}\label{raw}}
The \textbf{raw} encoder is used for directly specifying the space/bar
succession of a custom barcode symbol.
-\paragraph{Data and Options}\label{data-and-options-72}
+\hypertarget{data-and-options-82}{%
+\paragraph{Data and Options}\label{data-and-options-82}}
\begin{itemize}
\tightlist
@@ -4993,7 +6173,8 @@ succession of a custom barcode symbol.
the bars and spaces of a custom symbol.
\end{itemize}
-\paragraph{Example}\label{example-18}
+\hypertarget{example-22}{%
+\paragraph{Example}\label{example-22}}
\begin{verbatim}
Data: 331132131313411122131311333213114131131221323
@@ -5003,9 +6184,11 @@ Encoder: raw
\includegraphics{images/raw-1.eps}
-\subsection{Partial Symbols}\label{partial-symbols}
+\hypertarget{partial-symbols}{%
+\subsection{Partial Symbols}\label{partial-symbols}}
-\hypertarget{ean-2}{\subsubsection{EAN-2}\label{ean-2}}
+\hypertarget{ean-2}{%
+\subsubsection{EAN-2}\label{ean-2}}
\textbf{EAN-2} is the two-digit add-on code that accompanies a EAN or
UPC type barcode symbol such as an \protect\hyperlink{isbn}{ISBN} or
@@ -5013,7 +6196,8 @@ UPC type barcode symbol such as an \protect\hyperlink{isbn}{ISBN} or
Also known as: Two-Digit Add-On, Two-Digit Supplement, UPC-2
-\paragraph{Data and Options}\label{data-and-options-73}
+\hypertarget{data-and-options-83}{%
+\paragraph{Data and Options}\label{data-and-options-83}}
\begin{itemize}
\tightlist
@@ -5023,7 +6207,8 @@ Also known as: Two-Digit Add-On, Two-Digit Supplement, UPC-2
The \textbf{includetext} option should normally be supplied.
\end{itemize}
-\paragraph{Example}\label{example-19}
+\hypertarget{example-23}{%
+\paragraph{Example}\label{example-23}}
\begin{verbatim}
Data: 05
@@ -5033,7 +6218,8 @@ Encoder: ean2
\includegraphics{images/ean2-1.eps}
-\hypertarget{ean-5}{\subsubsection{EAN-5}\label{ean-5}}
+\hypertarget{ean-5}{%
+\subsubsection{EAN-5}\label{ean-5}}
\textbf{EAN-5} is the five-digit add-on code that accompanies an EAN or
UPC type barcode symbol such as an \protect\hyperlink{isbn}{ISBN} or
@@ -5041,7 +6227,8 @@ UPC type barcode symbol such as an \protect\hyperlink{isbn}{ISBN} or
Also known as: Five-Digit Add-On, Five-Digit Supplement, UPC-5
-\paragraph{Data and Options}\label{data-and-options-74}
+\hypertarget{data-and-options-84}{%
+\paragraph{Data and Options}\label{data-and-options-84}}
\begin{itemize}
\tightlist
@@ -5051,7 +6238,8 @@ Also known as: Five-Digit Add-On, Five-Digit Supplement, UPC-5
The \textbf{includetext} option should normally be supplied.
\end{itemize}
-\paragraph{Example}\label{example-20}
+\hypertarget{example-24}{%
+\paragraph{Example}\label{example-24}}
\begin{verbatim}
Data: 90200
@@ -5061,14 +6249,14 @@ Encoder: ean5
\includegraphics{images/ean5-1.eps}
-\hypertarget{gs1-application-identifier-standard-format}{\subsection{GS1
-Application Identifier Standard
+\hypertarget{gs1-application-identifier-standard-format}{%
+\subsection{GS1 Application Identifier Standard
Format}\label{gs1-application-identifier-standard-format}}
Certain barcode symbologies (including
\protect\hyperlink{gs1-128}{GS1-128},
-\protect\hyperlink{gs1-databar-omnidirectional}{GS1 DataBar
-Omnidirectional}, \protect\hyperlink{gs1-datamatrix}{GS1 DataMatrix},
+\protect\hyperlink{gs1-databar-expanded}{GS1 DataBar Expanded},
+\protect\hyperlink{gs1-datamatrix}{GS1 DataMatrix},
\protect\hyperlink{gs1-qr-code}{GS1 QR Code} and
\protect\hyperlink{gs1-composite-symbols}{GS1 Composite Symbols})
represent standardized GS1 data and require that their data field is
@@ -5102,25 +6290,37 @@ Identifier standard format will take care of parsing the input and
inserting any necessary \emph{FNC1} characters to delimit variable
length fields.
+Note: Instances of parentheses, \texttt{(} and \texttt{)}, within
+Application Identifier values in the input must be escaped using the
+\protect\hyperlink{input-processingux5cux23parse}{\texttt{parse} option}
+as \texttt{\^{}040} and \texttt{\^{}041}, respectively.
+
+\hypertarget{gs1-application-identifier-linting}{%
\paragraph{GS1 Application Identifier
-Definitions}\label{gs1-application-identifier-definitions}
+Linting}\label{gs1-application-identifier-linting}}
-The Application Identifier definitions are provided in the
+The input is checked against the structural rules for the GS1
+Application Identifiers, as described in
+\href{https://www.linkedin.com/pulse/gs1-application-identifier-syntax-dictionary-terry-burton/}{this
+article}, unless the \textbf{dontlint} option is given. The Application
+Identifier definitions are provided in the
\href{http://www.gs1.org/barcodes-epcrfid-id-keys/gs1-general-specifications}{GS1
-General Specifications}. A summary is available
-\href{http://en.wikipedia.org/wiki/GS1-128\#Full_list_of_Application_Identifiers}{here}
-however this may be out of date.
+General Specifications}.
-\section{Options Reference}\label{options-reference}
+\hypertarget{options-reference}{%
+\section{Options Reference}\label{options-reference}}
-\subsection{Check Digits}\label{check-digits}
+\hypertarget{check-digits}{%
+\subsection{Check Digits}\label{check-digits}}
-\subsubsection{includecheck}\label{includecheck}
+\hypertarget{includecheck}{%
+\subsubsection{includecheck}\label{includecheck}}
Generate check digit(s) for symbologies where the use of check digits is
optional.
-\paragraph{Example}\label{example-21}
+\hypertarget{example-25}{%
+\paragraph{Example}\label{example-25}}
Calculate the optional check characters of this Code 93 symbol:
@@ -5132,11 +6332,13 @@ Encoder: code93
\includegraphics{images/optincludecheck.eps}
-\subsubsection{includecheckintext}\label{includecheckintext}
+\hypertarget{includecheckintext}{%
+\subsubsection{includecheckintext}\label{includecheckintext}}
Show the calculated check digit in the human readable text.
-\paragraph{Notes}\label{notes}
+\hypertarget{notes}{%
+\paragraph{Notes}\label{notes}}
\begin{itemize}
\tightlist
@@ -5148,7 +6350,8 @@ Show the calculated check digit in the human readable text.
then that part is not displayed.
\end{itemize}
-\paragraph{Example}\label{example-22}
+\hypertarget{example-26}{%
+\paragraph{Example}\label{example-26}}
Display the check digit of this Royal Mail barcode:
@@ -5160,16 +6363,72 @@ Encoder: royalmail
\includegraphics{images/optincludecheckintext.eps}
-\subsection{Input Processing}\label{input-processing}
+\hypertarget{input-processing}{%
+\subsection{Input Processing}\label{input-processing}}
-\subsubsection{parse}\label{parse}
+\hypertarget{parse}{%
+\subsubsection{parse}\label{parse}}
In supporting barcode symbologies, when the \emph{parse} option is
specified, any instances of \texttt{\^{}NNN} in the data field are
replaced with their equivalent ASCII value, useful for specifying
unprintable characters.
-\paragraph{Example}\label{example-23}
+Additionally, control character names can be used to specify equivalent
+ASCII values, as follows:
+
+\begin{longtable}[]{@{}lr@{}}
+\toprule()
+Sequence & ASCII value \\
+\midrule()
+\endhead
+\texttt{\^{}NUL} & 0 \\
+\texttt{\^{}SOH} & 1 \\
+\texttt{\^{}STX} & 2 \\
+\texttt{\^{}ETX} & 3 \\
+\texttt{\^{}EOT} & 4 \\
+\texttt{\^{}ENQ} & 5 \\
+\texttt{\^{}ACK} & 6 \\
+\texttt{\^{}BEL} & 7 \\
+\texttt{\^{}BS} & 8 \\
+\texttt{\^{}TAB} & 9 \\
+\texttt{\^{}LF} & 10 \\
+\texttt{\^{}VT} & 11 \\
+\texttt{\^{}FF} & 12 \\
+\texttt{\^{}CR} & 13 \\
+\texttt{\^{}DLE} & 16 \\
+\texttt{\^{}DC1} & 17 \\
+\texttt{\^{}DC2} & 18 \\
+\texttt{\^{}DC3} & 19 \\
+\texttt{\^{}DC4} & 20 \\
+\texttt{\^{}NAK} & 21 \\
+\texttt{\^{}SYN} & 22 \\
+\texttt{\^{}ETB} & 23 \\
+\texttt{\^{}CAN} & 24 \\
+\texttt{\^{}EM} & 25 \\
+\texttt{\^{}SUB} & 26 \\
+\texttt{\^{}ESC} & 27 \\
+\texttt{\^{}FS} & 28 \\
+\texttt{\^{}GS} & 29 \\
+\texttt{\^{}RS} & 30 \\
+\texttt{\^{}US} & 31 \\
+\bottomrule()
+\end{longtable}
+
+ASCII control characters \texttt{SO} and \texttt{SI} cannot be encoded
+by name (since \texttt{SO} would prefix clash with \texttt{SOH}).
+
+Note: When this option is enabled, literal instances of "\^{}" in the
+data should be escaped as \texttt{\^{}094} to avoid replacement if the
+subsequent data characters represent a valid substitution. For example,
+literal "\^{}123" in the input data can be escaped as
+\texttt{\^{}094123}, literal "\^{}RS" in the data can be escaped as
+\texttt{\^{}094RS}, and literal "\^{}ABC" in the data cam be escaped as
+\texttt{\^{}094ABC} (in case \texttt{\^{}ABC} becomes a valid
+substitution in the future).
+
+\hypertarget{example-27}{%
+\paragraph{Example}\label{example-27}}
Equivalent symbols:
@@ -5187,17 +6446,22 @@ Encoder: datamatrix
\includegraphics{images/optparse.eps}
-\subsubsection{parsefnc}\label{parsefnc}
+\hypertarget{parsefnc}{%
+\subsubsection{parsefnc}\label{parsefnc}}
In supporting barcode symbologies, when the \textbf{parsefnc} option is
specified, non-data function characters can be specified by escaped
-combinations such as \texttt{\^{}FNC1}, \texttt{\^{}FNC4} and
-\texttt{\^{}SFT/}.
+combinations such as \texttt{\^{}FNC1}, \texttt{\^{}FNC4},
+\texttt{\^{}SFT/} and \texttt{\^{}ECI000003}.
-\paragraph{Example}\label{example-24}
+Note: When this option is enabled, literal instances of \texttt{\^{}} in
+the input data can be escaped as \texttt{\^{}\^{}}.
-Code 93 including a special shift combination \texttt{(/)A} representing
-\emph{!}:
+\hypertarget{example-28}{%
+\paragraph{Example}\label{example-28}}
+
+Manually-composed Code 93 Extended demonstrating use of the special
+shift combination \texttt{(/)A} to represent \emph{!}:
\begin{verbatim}
Data: TERRY^SFT/A
@@ -5207,13 +6471,16 @@ Encoder: code93
\includegraphics{images/optparsefnc.eps}
-\subsection{Symbol Dimensions}\label{symbol-dimensions}
+\hypertarget{symbol-dimensions}{%
+\subsection{Symbol Dimensions}\label{symbol-dimensions}}
-\subsubsection{height}\label{height}
+\hypertarget{height}{%
+\subsubsection{height}\label{height}}
Height of longest bar, in inches.
-\paragraph{Example}\label{example-25}
+\hypertarget{example-29}{%
+\paragraph{Example}\label{example-29}}
A 1/2 inch tall EAN-13:
@@ -5225,11 +6492,13 @@ Encoder: ean13
\includegraphics{images/optheight.eps}
-\subsubsection{width}\label{width}
+\hypertarget{width}{%
+\subsubsection{width}\label{width}}
Stretch the symbol to precisely this width, in inches.
-\paragraph{Notes}\label{notes-1}
+\hypertarget{notes-1}{%
+\paragraph{Notes}\label{notes-1}}
\begin{itemize}
\tightlist
@@ -5241,7 +6510,8 @@ Stretch the symbol to precisely this width, in inches.
\protect\hyperlink{resizing-symbols}{resizing symbols}.
\end{itemize}
-\paragraph{Example}\label{example-26}
+\hypertarget{example-30}{%
+\paragraph{Example}\label{example-30}}
A 2 inch wide Code 93 symbol:
@@ -5253,9 +6523,14 @@ Encoder: code93
\includegraphics{images/optwidth.eps}
-\subsection{Bar Properties}\label{bar-properties}
+\hypertarget{element-properties}{%
+\subsection{Element Properties}\label{element-properties}}
+
+These are options that allow you to compensate for print gain or print
+loss resulting from the properties of the printing process or substrate.
-\subsubsection{inkspread}\label{inkspread}
+\hypertarget{inkspread}{%
+\subsubsection{inkspread}\label{inkspread}}
For linear barcodes, the amount by which to reduce the bar widths to
compensate for inkspread, in points.
@@ -5263,7 +6538,8 @@ compensate for inkspread, in points.
For matrix barcodes, the amount by which the reduce the width and height
of dark modules to compensate for inkspread, in points.
-\paragraph{Notes}\label{notes-2}
+\hypertarget{notes-2}{%
+\paragraph{Notes}\label{notes-2}}
\begin{itemize}
\tightlist
@@ -5271,7 +6547,8 @@ of dark modules to compensate for inkspread, in points.
Negative values will increase the bar width.
\end{itemize}
-\paragraph{Example}\label{example-27}
+\hypertarget{example-31}{%
+\paragraph{Example}\label{example-31}}
Code 39 for a printer with very runny ink:
@@ -5283,7 +6560,8 @@ Encoder: code39
\includegraphics{images/optinkspread.eps}
-\subsubsection{inkspreadh}\label{inkspreadh}
+\hypertarget{inkspreadh}{%
+\subsubsection{inkspreadh}\label{inkspreadh}}
For matrix barcodes, the amount by which the reduce the width of dark
modules to compensate for inkspread, in points.
@@ -5291,18 +6569,28 @@ modules to compensate for inkspread, in points.
Note: inkspreadh is most useful for stacked-linear type barcodes such as
PDF417 and Codablock F.
-\subsubsection{inkspreadv}\label{inkspreadv}
+\hypertarget{inkspreadv}{%
+\subsubsection{inkspreadv}\label{inkspreadv}}
For matrix barcodes, the amount by which the reduce the height of dark
modules to compensate for inkspread, in points.
-\subsection{Text Properties}\label{text-properties}
+\hypertarget{dotty}{%
+\subsubsection{dotty}\label{dotty}}
+
+For matrix barcodes, render the modules as dots rather than squares. The
+dot radius can be adjusted using the \textbf{inkspread} option.
-\subsubsection{includetext}\label{includetext}
+\hypertarget{text-properties}{%
+\subsection{Text Properties}\label{text-properties}}
+
+\hypertarget{includetext}{%
+\subsubsection{includetext}\label{includetext}}
Show human readable text for data in symbol.
-\paragraph{Notes}\label{notes-3}
+\hypertarget{notes-3}{%
+\paragraph{Notes}\label{notes-3}}
\begin{itemize}
\tightlist
@@ -5311,7 +6599,8 @@ Show human readable text for data in symbol.
then it is not displayed
\end{itemize}
-\paragraph{Example}\label{example-28}
+\hypertarget{example-32}{%
+\paragraph{Example}\label{example-32}}
Display the text encoded in this Code 39 symbol:
@@ -5323,11 +6612,13 @@ Encoder: code39
\includegraphics{images/optincludetext.eps}
-\subsubsection{textfont}\label{textfont}
+\hypertarget{textfont}{%
+\subsubsection{textfont}\label{textfont}}
-The font name for text.
+The PostScript font name for text.
-\paragraph{Notes}\label{notes-4}
+\hypertarget{notes-4}{%
+\paragraph{Notes}\label{notes-4}}
\begin{itemize}
\tightlist
@@ -5337,9 +6628,19 @@ The font name for text.
\item
This option should be used in combination with the
\textbf{includetext} option.
+\item
+ The PostScript font name for a font file can be determined with the
+ following command from the fontconfig library:
+
+ \begin{itemize}
+ \tightlist
+ \item
+ \texttt{fc-scan\ -\/-format\ "\%\{postscriptname\}\textbackslash{}n"\ /usr/share/fonts/truetype/somefont.ttf}
+ \end{itemize}
\end{itemize}
-\paragraph{Example}\label{example-29}
+\hypertarget{example-33}{%
+\paragraph{Example}\label{example-33}}
Customise the human readable text of this USPS POSTNET symbol
@@ -5351,11 +6652,13 @@ Encoder: postnet
\includegraphics{images/opttextfont.eps}
-\subsubsection{textsize}\label{textsize}
+\hypertarget{textsize}{%
+\subsubsection{textsize}\label{textsize}}
The font size of the text in points.
-\paragraph{Note}\label{note}
+\hypertarget{note}{%
+\paragraph{Note}\label{note}}
\begin{itemize}
\tightlist
@@ -5364,7 +6667,8 @@ The font size of the text in points.
\textbf{includetext} option.
\end{itemize}
-\paragraph{Example}\label{example-30}
+\hypertarget{example-34}{%
+\paragraph{Example}\label{example-34}}
Customise the human readable text of this USPS POSTNET symbol
@@ -5376,11 +6680,13 @@ Encoder: postnet
\includegraphics{images/opttextfont.eps}
-\subsubsection{textgaps}\label{textgaps}
+\hypertarget{textgaps}{%
+\subsubsection{textgaps}\label{textgaps}}
The inter-character spacing of the text.
-\paragraph{Note}\label{note-1}
+\hypertarget{note-1}{%
+\paragraph{Note}\label{note-1}}
\begin{itemize}
\tightlist
@@ -5389,9 +6695,25 @@ The inter-character spacing of the text.
option.
\end{itemize}
-\subsection{Text Positioning}\label{text-positioning}
+\hypertarget{alttext}{%
+\subsubsection{alttext}\label{alttext}}
-\subsubsection{textxalign}\label{textxalign}
+Specify text to display other than what is provided in the data field.
+
+\hypertarget{note-2}{%
+\paragraph{Note}\label{note-2}}
+
+\begin{itemize}
+\tightlist
+\item
+ This option should be used in combination with the includetext option.
+\end{itemize}
+
+\hypertarget{text-positioning}{%
+\subsection{Text Positioning}\label{text-positioning}}
+
+\hypertarget{textxalign}{%
+\subsubsection{textxalign}\label{textxalign}}
The \textbf{textxalign} option is used to specify where to horizontally
position the text.
@@ -5412,20 +6734,8 @@ position the text.
\texttt{textxalign=justify}
\end{itemize}
-\paragraph{Notes}\label{notes-5}
-
-\begin{itemize}
-\tightlist
-\item
- By default (in the absence of \textbf{textxalign} or
- \textbf{textyalign}), each character of text is placed immediately
- below the corresponding modules where this is possible.
-\item
- Where there isn't such a direct relationship then the default is to
- position the text centrally beneath the symbol.
-\end{itemize}
-
-\subsubsection{textyalign}\label{textyalign}
+\hypertarget{textyalign}{%
+\subsubsection{textyalign}\label{textyalign}}
The \textbf{textyalign} option is used to specify where to vertically
position the text.
@@ -5440,7 +6750,20 @@ position the text.
\texttt{textyalign=above}
\end{itemize}
-\paragraph{Notes}\label{notes-6}
+\hypertarget{textxoffset}{%
+\subsubsection{textxoffset}\label{textxoffset}}
+
+The horizontal position of the text in points relative to the default
+position.
+
+\hypertarget{textyoffset}{%
+\subsubsection{textyoffset}\label{textyoffset}}
+
+The vertical position of the text in points relative to the default
+position.
+
+\hypertarget{notes-5}{%
+\paragraph{Notes}\label{notes-5}}
\begin{itemize}
\tightlist
@@ -5449,27 +6772,20 @@ position the text.
\textbf{textyalign}), each character of text is placed immediately
below the corresponding modules where this is possible.
\item
- Where there isn't such a direct relationship then the default is to
- position the text centrally beneath the symbol.
+ Where there isn\textquotesingle t such a direct relationship then the
+ default is to position the text centrally beneath the symbol.
\end{itemize}
-\subsubsection{textxoffset}\label{textxoffset}
-
-The horizontal position of the text in points relative to the default
-position.
-
-\subsubsection{textyoffset}\label{textyoffset}
-
-The vertical position of the text in points relative to the default
-position.
-
-\subsection{Border Properties}\label{border-properties}
+\hypertarget{border-properties}{%
+\subsection{Border Properties}\label{border-properties}}
-\subsubsection{showborder}\label{showborder}
+\hypertarget{showborder}{%
+\subsubsection{showborder}\label{showborder}}
Display a border around the symbol.
-\paragraph{Example}\label{example-31}
+\hypertarget{example-35}{%
+\paragraph{Example}\label{example-35}}
Display a customised border around this Codabar symbol:
@@ -5481,49 +6797,60 @@ Encoder: rationalizedCodabar
\includegraphics{images/optborder.eps}
-\subsubsection{borderwidth}\label{borderwidth}
+\hypertarget{borderwidth}{%
+\subsubsection{borderwidth}\label{borderwidth}}
Width of the border, in points.
-\subsubsection{borderleft}\label{borderleft}
+\hypertarget{borderleft}{%
+\subsubsection{borderleft}\label{borderleft}}
Gap between the left edge of the border and the symbol, in points.
-\subsubsection{borderright}\label{borderright}
+\hypertarget{borderright}{%
+\subsubsection{borderright}\label{borderright}}
Gap between the right edge of the border and the symbol, in points.
-\subsubsection{bordertop}\label{bordertop}
+\hypertarget{bordertop}{%
+\subsubsection{bordertop}\label{bordertop}}
Gap between the top edge of the border and the symbol, in points.
-\subsubsection{borderbottom}\label{borderbottom}
+\hypertarget{borderbottom}{%
+\subsubsection{borderbottom}\label{borderbottom}}
Gap between the bottom edge of the border and the symbol, in points.
-\subsection{Symbol Colors}\label{symbol-colors}
+\hypertarget{symbol-colors}{%
+\subsection{Symbol Colors}\label{symbol-colors}}
-\subsubsection{barcolor}\label{barcolor}
+\hypertarget{barcolor}{%
+\subsubsection{barcolor}\label{barcolor}}
Color of the bars or dark modules, either as a hex \texttt{RRGGBB} value
or a hex \texttt{CCMMYYKK} value.
-\subsubsection{backgroundcolor}\label{backgroundcolor}
+\hypertarget{backgroundcolor}{%
+\subsubsection{backgroundcolor}\label{backgroundcolor}}
Color of the light background or light modules, either as a hex
\texttt{RRGGBB} value or a hex \texttt{CCMMYYKK} value.
-\subsubsection{bordercolor}\label{bordercolor}
+\hypertarget{bordercolor}{%
+\subsubsection{bordercolor}\label{bordercolor}}
Color of the border, either as a hex \texttt{RRGGBB} value or a hex
\texttt{CCMMYYKK} value.
-\subsubsection{textcolor}\label{textcolor}
+\hypertarget{textcolor}{%
+\subsubsection{textcolor}\label{textcolor}}
Color of the respective component, either as a hex \texttt{RRGGBB} value
or a hex \texttt{CCMMYYKK} value.
-\paragraph{Examples}\label{examples-46}
+\hypertarget{examples-52}{%
+\paragraph{Examples}\label{examples-52}}
Colorized Code 11 symbol using the RGB colour space:
@@ -5545,13 +6872,16 @@ Encoder: code11
\includegraphics{images/optcolorcmyk.eps}
-\subsection{EAN-UPC Add Ons}\label{ean-upc-add-ons}
+\hypertarget{ean-upc-add-ons}{%
+\subsection{EAN-UPC Add Ons}\label{ean-upc-add-ons}}
-\subsubsection{addontextfont}\label{addontextfont}
+\hypertarget{addontextfont}{%
+\subsubsection{addontextfont}\label{addontextfont}}
The font name of the add on text.
-\paragraph{Notes}\label{notes-7}
+\hypertarget{notes-6}{%
+\paragraph{Notes}\label{notes-6}}
\begin{itemize}
\tightlist
@@ -5562,11 +6892,13 @@ The font name of the add on text.
\textbf{includetext} option.
\end{itemize}
-\subsubsection{addontextsize}\label{addontextsize}
+\hypertarget{addontextsize}{%
+\subsubsection{addontextsize}\label{addontextsize}}
The size of the add on text, in points
-\paragraph{Notes}\label{notes-8}
+\hypertarget{notes-7}{%
+\paragraph{Notes}\label{notes-7}}
\begin{itemize}
\tightlist
@@ -5575,7 +6907,8 @@ The size of the add on text, in points
\textbf{includetext} option.
\end{itemize}
-\paragraph{Example}\label{example-32}
+\hypertarget{example-36}{%
+\paragraph{Example}\label{example-36}}
Customise the human readable text of this USPS POSTNET symbol
@@ -5587,23 +6920,28 @@ Encoder: postnet
\includegraphics{images/opttextfont.eps}
-\subsubsection{addontextxoffset}\label{addontextxoffset}
+\hypertarget{addontextxoffset}{%
+\subsubsection{addontextxoffset}\label{addontextxoffset}}
Overrides the default horizontal positioning of the add on text.
-\subsubsection{addontextyoffset}\label{addontextyoffset}
+\hypertarget{addontextyoffset}{%
+\subsubsection{addontextyoffset}\label{addontextyoffset}}
Overrides the default vertical positioning of the add on text.
-\subsection{EAN-UPC Guards}\label{ean-upc-guards}
+\hypertarget{ean-upc-guards}{%
+\subsection{EAN-UPC Guards}\label{ean-upc-guards}}
-\subsubsection{guardwhitespace}\label{guardwhitespace}
+\hypertarget{guardwhitespace}{%
+\subsubsection{guardwhitespace}\label{guardwhitespace}}
-Display white space guards.
+Display whitespace guards.
-\paragraph{Example}\label{example-33}
+\hypertarget{example-37}{%
+\paragraph{Example}\label{example-37}}
-ISBN-13 with tiny white space guard:
+ISBN-13 with tiny whitespace guard:
\begin{verbatim}
Data: 978-1-873671-00
@@ -5613,33 +6951,40 @@ Encoder: isbn
\includegraphics{images/optguardsize.eps}
-\subsubsection{guardwidth}\label{guardwidth}
+\hypertarget{guardwidth}{%
+\subsubsection{guardwidth}\label{guardwidth}}
Width of the whitespace guards, in points.
-\subsubsection{guardheight}\label{guardheight}
+\hypertarget{guardheight}{%
+\subsubsection{guardheight}\label{guardheight}}
Height of the whitespace guards, in points.
-\subsubsection{guardleftpos}\label{guardleftpos}
+\hypertarget{guardleftpos}{%
+\subsubsection{guardleftpos}\label{guardleftpos}}
Override the default horizontal position of the left whitespace guard.
-\subsubsection{guardrightpos}\label{guardrightpos}
+\hypertarget{guardrightpos}{%
+\subsubsection{guardrightpos}\label{guardrightpos}}
Override the default horizontal position of the right whitespace guard.
-\subsubsection{guardleftypos}\label{guardleftypos}
+\hypertarget{guardleftypos}{%
+\subsubsection{guardleftypos}\label{guardleftypos}}
Override the default vertical position of the left whitespace guard.
-\subsubsection{guardrightypos}\label{guardrightypos}
+\hypertarget{guardrightypos}{%
+\subsubsection{guardrightypos}\label{guardrightypos}}
Override the default vertical position of the right whitespace guard.
-\paragraph{Example}\label{example-34}
+\hypertarget{example-38}{%
+\paragraph{Example}\label{example-38}}
-EAN-8 with very mangled white space guards:
+EAN-8 with very mangled whitespace guards:
\begin{verbatim}
Data: 01335583