• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2<!-- NewPage -->
3<html lang="en">
4<head>
5<!-- Generated by javadoc -->
6<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
7<title>Code39Reader (ZXing 3.5.1 API)</title>
8<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
9<script type="text/javascript" src="../../../../script.js"></script>
10</head>
11<body>
12<script type="text/javascript"><!--
13    try {
14        if (location.href.indexOf('is-external=true') == -1) {
15            parent.document.title="Code39Reader (ZXing 3.5.1 API)";
16        }
17    }
18    catch(err) {
19    }
20//-->
21var methods = {"i0":10};
22var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
23var altColor = "altColor";
24var rowColor = "rowColor";
25var tableTab = "tableTab";
26var activeTableTab = "activeTableTab";
27</script>
28<noscript>
29<div>JavaScript is disabled on your browser.</div>
30</noscript>
31<!-- ========= START OF TOP NAVBAR ======= -->
32<div class="topNav"><a name="navbar.top">
33<!--   -->
34</a>
35<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
36<a name="navbar.top.firstrow">
37<!--   -->
38</a>
39<ul class="navList" title="Navigation">
40<li><a href="../../../../overview-summary.html">Overview</a></li>
41<li><a href="package-summary.html">Package</a></li>
42<li class="navBarCell1Rev">Class</li>
43<li><a href="class-use/Code39Reader.html">Use</a></li>
44<li><a href="package-tree.html">Tree</a></li>
45<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
46<li><a href="../../../../index-all.html">Index</a></li>
47<li><a href="../../../../help-doc.html">Help</a></li>
48</ul>
49</div>
50<div class="subNav">
51<ul class="navList">
52<li><a href="../../../../com/google/zxing/oned/Code128Writer.html" title="class in com.google.zxing.oned"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
53<li><a href="../../../../com/google/zxing/oned/Code39Writer.html" title="class in com.google.zxing.oned"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
54</ul>
55<ul class="navList">
56<li><a href="../../../../index.html?com/google/zxing/oned/Code39Reader.html" target="_top">Frames</a></li>
57<li><a href="Code39Reader.html" target="_top">No&nbsp;Frames</a></li>
58</ul>
59<ul class="navList" id="allclasses_navbar_top">
60<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
61</ul>
62<div>
63<script type="text/javascript"><!--
64  allClassesLink = document.getElementById("allclasses_navbar_top");
65  if(window==top) {
66    allClassesLink.style.display = "block";
67  }
68  else {
69    allClassesLink.style.display = "none";
70  }
71  //-->
72</script>
73</div>
74<div>
75<ul class="subNavList">
76<li>Summary:&nbsp;</li>
77<li>Nested&nbsp;|&nbsp;</li>
78<li>Field&nbsp;|&nbsp;</li>
79<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
80<li><a href="#method.summary">Method</a></li>
81</ul>
82<ul class="subNavList">
83<li>Detail:&nbsp;</li>
84<li>Field&nbsp;|&nbsp;</li>
85<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
86<li><a href="#method.detail">Method</a></li>
87</ul>
88</div>
89<a name="skip.navbar.top">
90<!--   -->
91</a></div>
92<!-- ========= END OF TOP NAVBAR ========= -->
93<!-- ======== START OF CLASS DATA ======== -->
94<div class="header">
95<div class="subTitle">com.google.zxing.oned</div>
96<h2 title="Class Code39Reader" class="title">Class Code39Reader</h2>
97</div>
98<div class="contentContainer">
99<ul class="inheritance">
100<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
101<li>
102<ul class="inheritance">
103<li><a href="../../../../com/google/zxing/oned/OneDReader.html" title="class in com.google.zxing.oned">com.google.zxing.oned.OneDReader</a></li>
104<li>
105<ul class="inheritance">
106<li>com.google.zxing.oned.Code39Reader</li>
107</ul>
108</li>
109</ul>
110</li>
111</ul>
112<div class="description">
113<ul class="blockList">
114<li class="blockList">
115<dl>
116<dt>All Implemented Interfaces:</dt>
117<dd><a href="../../../../com/google/zxing/Reader.html" title="interface in com.google.zxing">Reader</a></dd>
118</dl>
119<hr>
120<br>
121<pre>public final class <span class="typeNameLabel">Code39Reader</span>
122extends <a href="../../../../com/google/zxing/oned/OneDReader.html" title="class in com.google.zxing.oned">OneDReader</a></pre>
123<div class="block"><p>Decodes Code 39 barcodes. Supports "Full ASCII Code 39" if USE_CODE_39_EXTENDED_MODE is set.</p></div>
124<dl>
125<dt><span class="simpleTagLabel">Author:</span></dt>
126<dd>Sean Owen</dd>
127<dt><span class="seeLabel">See Also:</span></dt>
128<dd><a href="../../../../com/google/zxing/oned/Code93Reader.html" title="class in com.google.zxing.oned"><code>Code93Reader</code></a></dd>
129</dl>
130</li>
131</ul>
132</div>
133<div class="summary">
134<ul class="blockList">
135<li class="blockList">
136<!-- ======== CONSTRUCTOR SUMMARY ======== -->
137<ul class="blockList">
138<li class="blockList"><a name="constructor.summary">
139<!--   -->
140</a>
141<h3>Constructor Summary</h3>
142<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
143<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
144<tr>
145<th class="colOne" scope="col">Constructor and Description</th>
146</tr>
147<tr class="altColor">
148<td class="colOne"><code><span class="memberNameLink"><a href="../../../../com/google/zxing/oned/Code39Reader.html#Code39Reader--">Code39Reader</a></span>()</code>
149<div class="block">Creates a reader that assumes all encoded data is data, and does not treat the final
150 character as a check digit.</div>
151</td>
152</tr>
153<tr class="rowColor">
154<td class="colOne"><code><span class="memberNameLink"><a href="../../../../com/google/zxing/oned/Code39Reader.html#Code39Reader-boolean-">Code39Reader</a></span>(boolean&nbsp;usingCheckDigit)</code>
155<div class="block">Creates a reader that can be configured to check the last character as a check digit.</div>
156</td>
157</tr>
158<tr class="altColor">
159<td class="colOne"><code><span class="memberNameLink"><a href="../../../../com/google/zxing/oned/Code39Reader.html#Code39Reader-boolean-boolean-">Code39Reader</a></span>(boolean&nbsp;usingCheckDigit,
160            boolean&nbsp;extendedMode)</code>
161<div class="block">Creates a reader that can be configured to check the last character as a check digit,
162 or optionally attempt to decode "extended Code 39" sequences that are used to encode
163 the full ASCII character set.</div>
164</td>
165</tr>
166</table>
167</li>
168</ul>
169<!-- ========== METHOD SUMMARY =========== -->
170<ul class="blockList">
171<li class="blockList"><a name="method.summary">
172<!--   -->
173</a>
174<h3>Method Summary</h3>
175<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
176<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
177<tr>
178<th class="colFirst" scope="col">Modifier and Type</th>
179<th class="colLast" scope="col">Method and Description</th>
180</tr>
181<tr id="i0" class="altColor">
182<td class="colFirst"><code><a href="../../../../com/google/zxing/Result.html" title="class in com.google.zxing">Result</a></code></td>
183<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/google/zxing/oned/Code39Reader.html#decodeRow-int-com.google.zxing.common.BitArray-java.util.Map-">decodeRow</a></span>(int&nbsp;rowNumber,
184         <a href="../../../../com/google/zxing/common/BitArray.html" title="class in com.google.zxing.common">BitArray</a>&nbsp;row,
185         <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../com/google/zxing/DecodeHintType.html" title="enum in com.google.zxing">DecodeHintType</a>,?&gt;&nbsp;hints)</code>
186<div class="block">Attempts to decode a one-dimensional barcode format given a single row of
187 an image.</div>
188</td>
189</tr>
190</table>
191<ul class="blockList">
192<li class="blockList"><a name="methods.inherited.from.class.com.google.zxing.oned.OneDReader">
193<!--   -->
194</a>
195<h3>Methods inherited from class&nbsp;com.google.zxing.oned.<a href="../../../../com/google/zxing/oned/OneDReader.html" title="class in com.google.zxing.oned">OneDReader</a></h3>
196<code><a href="../../../../com/google/zxing/oned/OneDReader.html#decode-com.google.zxing.BinaryBitmap-">decode</a>, <a href="../../../../com/google/zxing/oned/OneDReader.html#decode-com.google.zxing.BinaryBitmap-java.util.Map-">decode</a>, <a href="../../../../com/google/zxing/oned/OneDReader.html#patternMatchVariance-int:A-int:A-float-">patternMatchVariance</a>, <a href="../../../../com/google/zxing/oned/OneDReader.html#recordPattern-com.google.zxing.common.BitArray-int-int:A-">recordPattern</a>, <a href="../../../../com/google/zxing/oned/OneDReader.html#recordPatternInReverse-com.google.zxing.common.BitArray-int-int:A-">recordPatternInReverse</a>, <a href="../../../../com/google/zxing/oned/OneDReader.html#reset--">reset</a></code></li>
197</ul>
198<ul class="blockList">
199<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
200<!--   -->
201</a>
202<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
203<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
204</ul>
205</li>
206</ul>
207</li>
208</ul>
209</div>
210<div class="details">
211<ul class="blockList">
212<li class="blockList">
213<!-- ========= CONSTRUCTOR DETAIL ======== -->
214<ul class="blockList">
215<li class="blockList"><a name="constructor.detail">
216<!--   -->
217</a>
218<h3>Constructor Detail</h3>
219<a name="Code39Reader--">
220<!--   -->
221</a>
222<ul class="blockList">
223<li class="blockList">
224<h4>Code39Reader</h4>
225<pre>public&nbsp;Code39Reader()</pre>
226<div class="block">Creates a reader that assumes all encoded data is data, and does not treat the final
227 character as a check digit. It will not decoded "extended Code 39" sequences.</div>
228</li>
229</ul>
230<a name="Code39Reader-boolean-">
231<!--   -->
232</a>
233<ul class="blockList">
234<li class="blockList">
235<h4>Code39Reader</h4>
236<pre>public&nbsp;Code39Reader(boolean&nbsp;usingCheckDigit)</pre>
237<div class="block">Creates a reader that can be configured to check the last character as a check digit.
238 It will not decoded "extended Code 39" sequences.</div>
239<dl>
240<dt><span class="paramLabel">Parameters:</span></dt>
241<dd><code>usingCheckDigit</code> - if true, treat the last data character as a check digit, not
242 data, and verify that the checksum passes.</dd>
243</dl>
244</li>
245</ul>
246<a name="Code39Reader-boolean-boolean-">
247<!--   -->
248</a>
249<ul class="blockListLast">
250<li class="blockList">
251<h4>Code39Reader</h4>
252<pre>public&nbsp;Code39Reader(boolean&nbsp;usingCheckDigit,
253                    boolean&nbsp;extendedMode)</pre>
254<div class="block">Creates a reader that can be configured to check the last character as a check digit,
255 or optionally attempt to decode "extended Code 39" sequences that are used to encode
256 the full ASCII character set.</div>
257<dl>
258<dt><span class="paramLabel">Parameters:</span></dt>
259<dd><code>usingCheckDigit</code> - if true, treat the last data character as a check digit, not
260 data, and verify that the checksum passes.</dd>
261<dd><code>extendedMode</code> - if true, will attempt to decode extended Code 39 sequences in the
262 text.</dd>
263</dl>
264</li>
265</ul>
266</li>
267</ul>
268<!-- ============ METHOD DETAIL ========== -->
269<ul class="blockList">
270<li class="blockList"><a name="method.detail">
271<!--   -->
272</a>
273<h3>Method Detail</h3>
274<a name="decodeRow-int-com.google.zxing.common.BitArray-java.util.Map-">
275<!--   -->
276</a>
277<ul class="blockListLast">
278<li class="blockList">
279<h4>decodeRow</h4>
280<pre>public&nbsp;<a href="../../../../com/google/zxing/Result.html" title="class in com.google.zxing">Result</a>&nbsp;decodeRow(int&nbsp;rowNumber,
281                        <a href="../../../../com/google/zxing/common/BitArray.html" title="class in com.google.zxing.common">BitArray</a>&nbsp;row,
282                        <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../../com/google/zxing/DecodeHintType.html" title="enum in com.google.zxing">DecodeHintType</a>,?&gt;&nbsp;hints)
283                 throws <a href="../../../../com/google/zxing/NotFoundException.html" title="class in com.google.zxing">NotFoundException</a>,
284                        <a href="../../../../com/google/zxing/ChecksumException.html" title="class in com.google.zxing">ChecksumException</a>,
285                        <a href="../../../../com/google/zxing/FormatException.html" title="class in com.google.zxing">FormatException</a></pre>
286<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../com/google/zxing/oned/OneDReader.html#decodeRow-int-com.google.zxing.common.BitArray-java.util.Map-">OneDReader</a></code></span></div>
287<div class="block"><p>Attempts to decode a one-dimensional barcode format given a single row of
288 an image.</p></div>
289<dl>
290<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
291<dd><code><a href="../../../../com/google/zxing/oned/OneDReader.html#decodeRow-int-com.google.zxing.common.BitArray-java.util.Map-">decodeRow</a></code>&nbsp;in class&nbsp;<code><a href="../../../../com/google/zxing/oned/OneDReader.html" title="class in com.google.zxing.oned">OneDReader</a></code></dd>
292<dt><span class="paramLabel">Parameters:</span></dt>
293<dd><code>rowNumber</code> - row number from top of the row</dd>
294<dd><code>row</code> - the black/white pixel data of the row</dd>
295<dd><code>hints</code> - decode hints</dd>
296<dt><span class="returnLabel">Returns:</span></dt>
297<dd><a href="../../../../com/google/zxing/Result.html" title="class in com.google.zxing"><code>Result</code></a> containing encoded string and start/end of barcode</dd>
298<dt><span class="throwsLabel">Throws:</span></dt>
299<dd><code><a href="../../../../com/google/zxing/NotFoundException.html" title="class in com.google.zxing">NotFoundException</a></code> - if no potential barcode is found</dd>
300<dd><code><a href="../../../../com/google/zxing/ChecksumException.html" title="class in com.google.zxing">ChecksumException</a></code> - if a potential barcode is found but does not pass its checksum</dd>
301<dd><code><a href="../../../../com/google/zxing/FormatException.html" title="class in com.google.zxing">FormatException</a></code> - if a potential barcode is found but format is invalid</dd>
302</dl>
303</li>
304</ul>
305</li>
306</ul>
307</li>
308</ul>
309</div>
310</div>
311<!-- ========= END OF CLASS DATA ========= -->
312<!-- ======= START OF BOTTOM NAVBAR ====== -->
313<div class="bottomNav"><a name="navbar.bottom">
314<!--   -->
315</a>
316<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
317<a name="navbar.bottom.firstrow">
318<!--   -->
319</a>
320<ul class="navList" title="Navigation">
321<li><a href="../../../../overview-summary.html">Overview</a></li>
322<li><a href="package-summary.html">Package</a></li>
323<li class="navBarCell1Rev">Class</li>
324<li><a href="class-use/Code39Reader.html">Use</a></li>
325<li><a href="package-tree.html">Tree</a></li>
326<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
327<li><a href="../../../../index-all.html">Index</a></li>
328<li><a href="../../../../help-doc.html">Help</a></li>
329</ul>
330</div>
331<div class="subNav">
332<ul class="navList">
333<li><a href="../../../../com/google/zxing/oned/Code128Writer.html" title="class in com.google.zxing.oned"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
334<li><a href="../../../../com/google/zxing/oned/Code39Writer.html" title="class in com.google.zxing.oned"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
335</ul>
336<ul class="navList">
337<li><a href="../../../../index.html?com/google/zxing/oned/Code39Reader.html" target="_top">Frames</a></li>
338<li><a href="Code39Reader.html" target="_top">No&nbsp;Frames</a></li>
339</ul>
340<ul class="navList" id="allclasses_navbar_bottom">
341<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
342</ul>
343<div>
344<script type="text/javascript"><!--
345  allClassesLink = document.getElementById("allclasses_navbar_bottom");
346  if(window==top) {
347    allClassesLink.style.display = "block";
348  }
349  else {
350    allClassesLink.style.display = "none";
351  }
352  //-->
353</script>
354</div>
355<div>
356<ul class="subNavList">
357<li>Summary:&nbsp;</li>
358<li>Nested&nbsp;|&nbsp;</li>
359<li>Field&nbsp;|&nbsp;</li>
360<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
361<li><a href="#method.summary">Method</a></li>
362</ul>
363<ul class="subNavList">
364<li>Detail:&nbsp;</li>
365<li>Field&nbsp;|&nbsp;</li>
366<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
367<li><a href="#method.detail">Method</a></li>
368</ul>
369</div>
370<a name="skip.navbar.bottom">
371<!--   -->
372</a></div>
373<!-- ======== END OF BOTTOM NAVBAR ======= -->
374<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2022. All rights reserved.</small></p>
375</body>
376</html>
377