82 lines
11 KiB
HTML
82 lines
11 KiB
HTML
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Chapter 24. Linear Barcodes (One Dimensional Barcodes)</title><link rel="stylesheet" type="text/css" href="manual.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.0"><link rel="home" href="index.html" title="JpGraph Manual"><link rel="up" href="pt06.html" title="Part VI. Barcodes"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 24. Linear Barcodes (One Dimensional Barcodes)</th></tr><tr><td width="20%" align="left"> </td><th width="60%" align="center">Part VI. Barcodes</th><td width="20%" align="right"> </td></tr></table><hr></div><div class="chapter" title="Chapter 24. Linear Barcodes (One Dimensional Barcodes)"><div class="titlepage"><div><div><h2 class="title"><a name="id2595632"></a>Chapter 24. Linear Barcodes (One Dimensional Barcodes)</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="ch24.html#id2595642">24.1. Introduction</a></span></dt><dt><span class="sect1"><a href="ch24s02.html">24.2. How does linear barcodes work?</a></span></dt><dt><span class="sect1"><a href="ch24s03.html">24.3. Barcode symbologies</a></span></dt><dd><dl><dt><span class="sect2"><a href="ch24s03.html#id2595884">24.3.1. Numerical only barcode symbologies</a></span></dt><dt><span class="sect2"><a href="ch24s03.html#id2595984">24.3.2. Alphanumerical barcode symbologies</a></span></dt><dt><span class="sect2"><a href="ch24s03.html#id2596044">24.3.3. Which symbology should be used?</a></span></dt></dl></dd><dt><span class="sect1"><a href="ch24s04.html">24.4. Features</a></span></dt><dd><dl><dt><span class="sect2"><a href="ch24s04.html#id2596334">24.4.1. Sample application</a></span></dt></dl></dd><dt><span class="sect1"><a href="ch24s05.html">24.5. Creating barcodes - quick start</a></span></dt><dt><span class="sect1"><a href="ch24s06.html">24.6. Error handling</a></span></dt><dt><span class="sect1"><a href="ch24s07.html">24.7. Generating barcodes on the command line</a></span></dt><dt><span class="sect1"><a href="ch24s08.html">24.8. Format options for barcodes</a></span></dt><dd><dl><dt><span class="sect2"><a href="ch24s08.html#id2596909">24.8.1. Adjusting the encodation process</a></span></dt><dt><span class="sect2"><a href="ch24s08.html#id2597037">24.8.2. Selecting output format</a></span></dt><dt><span class="sect2"><a href="ch24s08.html#id2597044">24.8.3. Writing barcodes to a file</a></span></dt><dt><span class="sect2"><a href="ch24s08.html#id2597234">24.8.4. Hiding the human readable text</a></span></dt><dt><span class="sect2"><a href="ch24s08.html#id2597265">24.8.5. Adjusting the module width</a></span></dt><dt><span class="sect2"><a href="ch24s08.html#id2597395">24.8.6. Setting vertical or horizontal layout</a></span></dt><dt><span class="sect2"><a href="ch24s08.html#id2597418">24.8.7. Adjusting height of bar code</a></span></dt><dt><span class="sect2"><a href="ch24s08.html#id2597385">24.8.8. Scaling of bar codes</a></span></dt><dt><span class="sect2"><a href="ch24s08.html#id2597465">24.8.9. Add frame around bar code</a></span></dt><dt><span class="sect2"><a href="ch24s08.html#id2597509">24.8.10. Examples of adjusting the output</a></span></dt></dl></dd><dt><span class="sect1"><a href="ch24s09.html">24.9. Short description of supported symbologies</a></span></dt><dd><dl><dt><span class="sect2"><a href="ch24s09.html#id2597569">24.9.1. UPC A</a></span></dt><dt><span class="sect2"><a href="ch24s09.html#id2597660">24.9.2. UPC E</a></span></dt><dt><span class="sect2"><a href="ch24s09.html#id2597818">24.9.3. EAN 8</a></span></dt><dt><span class="sect2"><a href="ch24s09.html#id2597973">24.9.4. EAN 13</a></span></dt><dt><span class="sect2"><a href="ch24s09.html#id2598038">24.9.5. EAN 128</a></span></dt><dt><span class="sect2"><a href="ch24s09.html#id2598150">24.9.6. Industrial 2 of 5</a></span></dt><dt><span class="sect2"><a href="ch24s09.html#id2598244">24.9.7. Interleaved 2 of 5</a></span></dt><dt><span class="sect2"><a href="ch24s09.html#id2598510">24.9.8. CODE 11 (USD 8)</a></span></dt><dt><span class="sect2"><a href="ch24s09.html#id2598581">24.9.9. CODE 39</a></span></dt><dt><span class="sect2"><a href="ch24s09.html#id2598798">24.9.10. CODE 39 Extended</a></span></dt><dt><span class="sect2"><a href="ch24s09.html#id2598941">24.9.11. CODE 128</a></span></dt><dt><span class="sect2"><a href="ch24s09.html#id2599111">24.9.12. CODABAR</a></span></dt><dt><span class="sect2"><a href="ch24s09.html#id2599182">24.9.13. Bookland (ISBN)</a></span></dt></dl></dd></dl></div>
|
||
|
||
<div class="sect1" title="Introduction"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2595642"></a>Introduction</h2></div></div></div>
|
||
|
||
<div class="note" title="Note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p>This module is only available in the pro-version of the library.</p></div>
|
||
<p>With the linear (One-dimensional) barcode extension it is possible to create bar
|
||
codes using all the commonly accepted symbologies. The resulting bar code can be
|
||
created as either an image (in PNG or JPEG format) or as a Postscript file ready for
|
||
printing on high resolution printers. </p>
|
||
<p>The bar code extension provides extensive data verification which makes sure that
|
||
the created barcode follows the official applicable standards.</p>
|
||
<p>
|
||
</p><div class="note" title="Note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3>
|
||
<p>All generated bar codes (except CODE 11 which have little support in
|
||
Europe) have been extensively verified using Metrologic CCD-47 handhold
|
||
scanner. </p>
|
||
</div><p>
|
||
</p>
|
||
<p>In order to create a linear barcode the module
|
||
"<code class="filename">jpgraph_barcode.php</code>" must be included.</p>
|
||
<p>There are several types of linear barcode even though they all use the same
|
||
principle. The reason for several different types (or symbologies as it is known) is
|
||
partly to handle different requirements (for example encoding just numerical data or
|
||
both numerical and alphabetical data) and partly because they were initially created
|
||
by different companies to solve similar problems. The library supports most of the
|
||
common linear barcode. These types of barcode look like what can be usually seen on
|
||
consumer goods.</p>
|
||
<p>The different types of barcodes are often referred to as different
|
||
symbologies.</p>
|
||
<p>Most of the commonly used symbologies has been elevated to ISO/IEC standards. Some
|
||
barcode which have not yet been accepted as ISO standard are available from AIM
|
||
(<code class="uri"><a class="uri" href="http://www.aimglobal.org" target="_top">http://www.aimglobal.org</a></code>). In
|
||
USA the organization responsible for issuing retail codes used in barcodes are the
|
||
<span class="italic">Uniform Code Council</span>, (UCC) <code class="uri"><a class="uri" href="http://www.uc-council.org/" target="_top">http://www.uc-council.org</a></code>.</p>
|
||
<p>While these standards are very comprehensive they are of little interest to end
|
||
user of the barcode. For an end user the three most important question when
|
||
selecting a barcode symbology are</p>
|
||
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem">
|
||
<p>What characters can be encoded in this symbology?</p>
|
||
</li><li class="listitem">
|
||
<p>How efficient is the symbology, i.e. how large will the barcode be for
|
||
a given input data string? </p>
|
||
<p>Linear barcodes typically encode alphanumerical strings up to maximum
|
||
of ~20 characters. </p>
|
||
<p>
|
||
</p><div class="note" title="Note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3>
|
||
<p>While many of the barcode symbologies can handle, in theory
|
||
unlimited, string lengths there are practical limitation to how
|
||
wide barcode a given reader/scanner can interpret. Most handhold
|
||
scanners can usually not reliable read a barcode wider than
|
||
~10cm.</p>
|
||
</div><p>
|
||
</p>
|
||
</li><li class="listitem">
|
||
<p>How strong is the tolerance against physical damage, i.e. how large
|
||
percentage of the barcode can be destroyed while still be readable by a
|
||
scanner?</p>
|
||
<p>The tolerance for linear barcode are in general low. If one ore more
|
||
of the bars (making up the barcode) is unreadable the whole barcode is
|
||
in practice unreadable. While some barcode symbologies include a check
|
||
digit this is not enough to re-create damaged data. It is only enough to
|
||
verify with some confidence that the data is intact, however there is
|
||
still no guarantee since two errors might, by coincidence, make the
|
||
check digit correct. </p>
|
||
<p>A common way to strengthen linear barcodes is to make them physically
|
||
larger/taller.</p>
|
||
</li></ol></div><p>While linear barcodes is still widely used in legacy applications
|
||
there are almost no new applications that uses linear barcode due in part to the
|
||
limitations listed above (poor fault tolerance and low capacity). Most new
|
||
applications uses either RFID tags or two dimensional barcodes (described in the
|
||
following chapters) which have much higher data capacity and fault tolerance.</p>
|
||
</div>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
</div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"> </td><td width="20%" align="center"><a accesskey="u" href="pt06.html">Up</a></td><td width="40%" align="right"> </td></tr><tr><td width="40%" align="left" valign="top"> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> </td></tr></table></div></body></html>
|