aspose.barcode 23.4.0 → 23.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/Generation.js CHANGED
@@ -13,7 +13,7 @@ const joint = require("./Joint");
13
13
  * EAN14, SCC14, SSCC18, ITF14, SingaporePost ...
14
14
  * 2D:
15
15
  * Aztec, DataMatrix, PDf417, QR code ...
16
- *@example
16
+ * @example
17
17
  * // This sample shows how to create and save a barcode image.
18
18
  * let encode_type = EncodeTypes.CODE_128;
19
19
  * let generator = new BarcodeGenerator(encode_type);
@@ -200,8 +200,10 @@ class BarcodeParameters extends joint.BaseJavaClass
200
200
  pdf417;
201
201
  maxiCode;
202
202
  aztec;
203
+ code128;
203
204
  codabar;
204
205
  coupon;
206
+ hanXin;
205
207
  supplement;
206
208
  dotCode;
207
209
  padding;
@@ -232,8 +234,10 @@ class BarcodeParameters extends joint.BaseJavaClass
232
234
  this.pdf417 = new Pdf417Parameters(this.getJavaClass().getPdf417Sync());
233
235
  this.maxiCode = new MaxiCodeParameters(this.getJavaClass().getMaxiCodeSync());
234
236
  this.aztec = new AztecParameters(this.getJavaClass().getAztecSync());
237
+ this.code128 = new Code128Parameters(this.getJavaClass().getCode128Sync());
235
238
  this.codabar = new CodabarParameters(this.getJavaClass().getCodabarSync());
236
239
  this.coupon = new CouponParameters(this.getJavaClass().getCouponSync());
240
+ this.hanXin = new HanXinParameters(this.getJavaClass().getHanXinSync());
237
241
  this.supplement = new SupplementParameters(this.getJavaClass().getSupplementSync());
238
242
  this.dotCode = new DotCodeParameters(this.getJavaClass().getDotCodeSync());
239
243
  this.padding = new Padding(this.getJavaClass().getPaddingSync());
@@ -241,8 +245,8 @@ class BarcodeParameters extends joint.BaseJavaClass
241
245
  }
242
246
 
243
247
  /**
244
- * x-dimension is the smallest width of the unit of BarCode bars or spaces.
245
- * Increase this will increase the whole barcode image width.
248
+ * x-dimension is the smallest width of the unit of BarCode bars or spaces.<br>
249
+ * Increase this will increase the whole barcode image width.<br>
246
250
  * Ignored if AutoSizeMode property is set to AutoSizeMode.NEAREST or AutoSizeMode.INTERPOLATION.
247
251
  */
248
252
  getXDimension()
@@ -251,8 +255,8 @@ class BarcodeParameters extends joint.BaseJavaClass
251
255
  }
252
256
 
253
257
  /**
254
- * x-dimension is the smallest width of the unit of BarCode bars or spaces.
255
- * Increase this will increase the whole barcode image width.
258
+ * x-dimension is the smallest width of the unit of BarCode bars or spaces.<br>
259
+ * Increase this will increase the whole barcode image width.<br>
256
260
  * Ignored if AutoSizeMode property is set to AutoSizeMode.NEAREST or AutoSizeMode.INTERPOLATION.
257
261
  * @throws BarcodeException
258
262
  */
@@ -263,7 +267,7 @@ class BarcodeParameters extends joint.BaseJavaClass
263
267
  }
264
268
 
265
269
  /**
266
- * Height of 1D barcodes' bars in Unit value.
270
+ * Height of 1D barcodes' bars in Unit value.<br>
267
271
  * Ignored if AutoSizeMode property is set to AutoSizeMode.NEAREST or AutoSizeMode.INTERPOLATION.
268
272
  * @throws BarcodeException
269
273
  */
@@ -273,7 +277,7 @@ class BarcodeParameters extends joint.BaseJavaClass
273
277
  }
274
278
 
275
279
  /**
276
- * Height of 1D barcodes' bars in Unit value.
280
+ * Height of 1D barcodes' bars in Unit value.<br>
277
281
  * Ignored if AutoSizeMode property is set to AutoSizeMode.NEAREST or AutoSizeMode.INTERPOLATION.
278
282
  * @throws BarcodeException
279
283
  */
@@ -311,7 +315,7 @@ class BarcodeParameters extends joint.BaseJavaClass
311
315
  }
312
316
 
313
317
  /**
314
- * Barcode paddings.
318
+ * Barcode paddings.<br>
315
319
  * Default value: 5pt 5pt 5pt 5pt.
316
320
  */
317
321
  getPadding()
@@ -320,7 +324,7 @@ class BarcodeParameters extends joint.BaseJavaClass
320
324
  }
321
325
 
322
326
  /**
323
- * Barcode paddings.
327
+ * Barcode paddings.<br>
324
328
  * Default value: 5pt 5pt 5pt 5pt.
325
329
  */
326
330
  setPadding(value)
@@ -346,9 +350,9 @@ class BarcodeParameters extends joint.BaseJavaClass
346
350
  }
347
351
 
348
352
  /**
349
- * Enable checksum during generation 1D barcodes.
350
- * Default is treated as Yes for symbology which must contain checksum, as No where checksum only possible.
351
- * Checksum is possible: Code39 Standard/Extended, Standard2of5, Interleaved2of5, Matrix2of5, ItalianPost25, DeutschePostIdentcode, DeutschePostLeitcode, VIN, Codabar
353
+ * Enable checksum during generation 1D barcodes.<br>
354
+ * Default is treated as Yes for symbology which must contain checksum, as No where checksum only possible.<br>
355
+ * Checksum is possible: Code39 Standard/Extended, Standard2of5, Interleaved2of5, Matrix2of5, ItalianPost25, DeutschePostIdentcode, DeutschePostLeitcode, VIN, Codabar<br>
352
356
  * Checksum always used: Rest symbology
353
357
  */
354
358
  isChecksumEnabled()
@@ -357,9 +361,9 @@ class BarcodeParameters extends joint.BaseJavaClass
357
361
  }
358
362
 
359
363
  /**
360
- * Enable checksum during generation 1D barcodes.
361
- * Default is treated as Yes for symbology which must contain checksum, as No where checksum only possible.
362
- * Checksum is possible: Code39 Standard/Extended, Standard2of5, Interleaved2of5, Matrix2of5, ItalianPost25, DeutschePostIdentcode, DeutschePostLeitcode, VIN, Codabar
364
+ * Enable checksum during generation 1D barcodes.<br>
365
+ * Default is treated as Yes for symbology which must contain checksum, as No where checksum only possible.<br>
366
+ * Checksum is possible: Code39 Standard/Extended, Standard2of5, Interleaved2of5, Matrix2of5, ItalianPost25, DeutschePostIdentcode, DeutschePostLeitcode, VIN, Codabar<br>
363
367
  * Checksum always used: Rest symbology
364
368
  */
365
369
  setChecksumEnabled(value)
@@ -368,8 +372,8 @@ class BarcodeParameters extends joint.BaseJavaClass
368
372
  }
369
373
 
370
374
  /**
371
- * Indicates whether explains the character "\" as an escape character in CodeText property. Used for Pdf417, DataMatrix, Code128 only
372
- * If the EnableEscape is true, "\" will be explained as a special escape character. Otherwise, "\" acts as normal characters.
375
+ * Indicates whether explains the character "\" as an escape character in CodeText property. Used for Pdf417, DataMatrix, Code128 only<br>
376
+ * If the EnableEscape is true, "\" will be explained as a special escape character. Otherwise, "\" acts as normal characters.<br>
373
377
  * Aspose.BarCode supports inputing decimal ascii code and mnemonic for ASCII control-code characters. For example, \013 and \\CR stands for CR.
374
378
  */
375
379
  getEnableEscape()
@@ -404,7 +408,7 @@ class BarcodeParameters extends joint.BaseJavaClass
404
408
  * Default value: 3, that is, wide bars are 3 times as wide as narrow bars.<br>
405
409
  * Used for ITF, PZN, PharmaCode, Standard2of5, Interleaved2of5, Matrix2of5, ItalianPost25, IATA2of5, <br>
406
410
  * VIN, DeutschePost, OPC, Code32, DataLogic2of5, PatchCode, Code39Extended, Code39Standard<br>
407
- *
411
+ * <br>
408
412
  * The WideNarrowRatio parameter value is less than or equal to 0.
409
413
  */
410
414
  setWideNarrowRatio(value)
@@ -493,11 +497,12 @@ class BarcodeParameters extends joint.BaseJavaClass
493
497
  }
494
498
 
495
499
  /**
496
- * GS1 Composite Bar parameters.
497
- *
498
- * This sample shows how to create and save a GS1 Composite Bar image.
500
+ * GS1 Composite Bar parameters.<br>
501
+ * <br>
502
+ * This sample shows how to create and save a GS1 Composite Bar image.<br>
499
503
  * Note that 1D codetext and 2D codetext are separated by symbol '/'
500
504
  *
505
+ * @example
501
506
  * let codetext = "(01)03212345678906/(21)A1B2C3D4E5F6G7H8";
502
507
  * let generator = new BarcodeGenerator(EncodeTypes.GS_1_COMPOSITE_BAR, codetext);
503
508
  *
@@ -523,11 +528,12 @@ class BarcodeParameters extends joint.BaseJavaClass
523
528
  }
524
529
 
525
530
  /**
526
- * GS1 Composite Bar parameters.
527
- *
528
- * This sample shows how to create and save a GS1 Composite Bar image.
531
+ * GS1 Composite Bar parameters.<br>
532
+ * <br>
533
+ * This sample shows how to create and save a GS1 Composite Bar image.<br>
529
534
  * Note that 1D codetext and 2D codetext are separated by symbol '/'
530
535
  *
536
+ * @example
531
537
  * let codetext = "(01)03212345678906/(21)A1B2C3D4E5F6G7H8";
532
538
  * let generator = new BarcodeGenerator(EncodeTypes.GS_1_COMPOSITE_BAR, codetext);
533
539
  *
@@ -539,10 +545,10 @@ class BarcodeParameters extends joint.BaseJavaClass
539
545
  *
540
546
  * // X-Dimension of 1D and 2D components
541
547
  * generator.getParameters().getBarcode().getXDimension().setPixels(3);
542
- * ///
548
+ *
543
549
  * // Height of 1D component
544
550
  * generator.getParameters().getBarcode().getBarHeight().setPixels(100);
545
- * ///
551
+ *
546
552
  * generator.save("test.png", BarcodeImageFormat.PNG);
547
553
  */
548
554
  setGS1CompositeBar(value)
@@ -631,6 +637,16 @@ class BarcodeParameters extends joint.BaseJavaClass
631
637
  return this.aztec;
632
638
  }
633
639
 
640
+ /**
641
+ * <p>
642
+ * Code128 parameters.
643
+ * </p>
644
+ */
645
+ getCode128()
646
+ {
647
+ return this.code128;
648
+ }
649
+
634
650
  /**
635
651
  * Codabar parameters.
636
652
  */
@@ -646,6 +662,14 @@ class BarcodeParameters extends joint.BaseJavaClass
646
662
  {
647
663
  return this.coupon;
648
664
  }
665
+
666
+ /**
667
+ * HanXin parameters.
668
+ */
669
+ getHanXin()
670
+ {
671
+ return this.hanXin;
672
+ }
649
673
  }
650
674
 
651
675
  /**
@@ -678,9 +702,7 @@ class BaseGenerationParameters extends joint.BaseJavaClass
678
702
  }
679
703
 
680
704
  /**
681
- * <p>
682
705
  * Gets a value indicating whether is used anti-aliasing mode to render image
683
- * </p>
684
706
  */
685
707
  getUseAntiAlias()
686
708
  {
@@ -688,9 +710,7 @@ class BaseGenerationParameters extends joint.BaseJavaClass
688
710
  }
689
711
 
690
712
  /**
691
- * <p>
692
713
  * Sets a value indicating whether is used anti-aliasing mode to render image
693
- * </p>
694
714
  */
695
715
  setUseAntiAlias(value)
696
716
  {
@@ -723,10 +743,11 @@ class BaseGenerationParameters extends joint.BaseJavaClass
723
743
  }
724
744
 
725
745
  /**
746
+ * <p>
726
747
  * Gets the resolution of the BarCode image.<br>
727
748
  * One value for both dimensions.<br>
728
749
  * Default value: 96 dpi.<br>
729
- *
750
+ * </p>
730
751
  * The Resolution parameter value is less than or equal to 0.
731
752
  */
732
753
  getResolution()
@@ -735,9 +756,11 @@ class BaseGenerationParameters extends joint.BaseJavaClass
735
756
  }
736
757
 
737
758
  /**
759
+ * <p>
738
760
  * Sets the resolution of the BarCode image.<br>
739
761
  * One value for both dimensions.<br>
740
762
  * Default value: 96 dpi.<br>
763
+ * </p>
741
764
  *
742
765
  * The Resolution parameter value is less than or equal to 0.
743
766
  */
@@ -910,7 +933,7 @@ class BorderParameters extends joint.BaseJavaClass
910
933
  }
911
934
 
912
935
  /**
913
- * Border visibility. If false than parameter Width is always ignored (0).
936
+ * Border visibility. If false than parameter Width is always ignored (0).<br>
914
937
  * Default value: false.
915
938
  */
916
939
  getVisible()
@@ -919,7 +942,7 @@ class BorderParameters extends joint.BaseJavaClass
919
942
  }
920
943
 
921
944
  /**
922
- * Border visibility. If false than parameter Width is always ignored (0).
945
+ * Border visibility. If false than parameter Width is always ignored (0).<br>
923
946
  * Default value: false.
924
947
  */
925
948
  setVisible(value)
@@ -1001,54 +1024,6 @@ class BorderParameters extends joint.BaseJavaClass
1001
1024
  }
1002
1025
  }
1003
1026
 
1004
- /**
1005
- * Enable checksum validation during recognition for 1D barcodes.
1006
- * Default is treated as Yes for symbologies which must contain checksum, as No where checksum only possible.
1007
- * Checksum never used: Codabar
1008
- * Checksum is possible: Code39 Standard/Extended, Standard2of5, Interleaved2of5, Matrix2of5, ItalianPost25, DeutschePostIdentcode, DeutschePostLeitcode, VIN
1009
- * Checksum always used: Rest symbologies
1010
- * @example
1011
- * //This sample shows influence of ChecksumValidation on recognition quality and results
1012
- * let generator = new BarcodeGenerator(EncodeTypes.EAN_13, "1234567890128");
1013
- * generator.save("test.png", BarcodeImageFormat.PNG);
1014
- * let reader = new BarCodeReader("test.png", DecodeType.EAN_13);
1015
- * //checksum disabled
1016
- * reader.setChecksumValidation(ChecksumValidation.OFF);
1017
- * reader.readBarCodes().forEach(function(result, i, results)
1018
- * {
1019
- * console.log("BarCode CodeText: " + result.getCodeText());
1020
- * console.log("BarCode Value: " + result.getExtended().getOneD().getValue());
1021
- * console.log("BarCode Checksum: " + result.getExtended().getOneD().getCheckSum());
1022
- * });
1023
- * let reader = new BarCodeReader("test.png", DecodeType.EAN_13);
1024
- * //checksum enabled
1025
- * reader.setChecksumValidation(ChecksumValidation.ON);
1026
- * reader.readBarCodes().forEach(function(result, i, results)
1027
- * {
1028
- * console.log("BarCode CodeText: " + result.getCodeText());
1029
- * console.log("BarCode Value: " + result.getExtended().getOneD().getValue());
1030
- * console.log("BarCode Checksum: " + result.getExtended().getOneD().getCheckSum());
1031
- * });
1032
- * @enum
1033
- */
1034
- ChecksumValidation =
1035
- {
1036
- /**
1037
- * If checksum is required by the specification - it will be validated.
1038
- */
1039
- DEFAULT: 0,
1040
-
1041
- /**
1042
- * Always validate checksum if possible.
1043
- */
1044
- ON: 1,
1045
-
1046
- /**
1047
- * Do not validate checksum.
1048
- */
1049
- OFF: 2
1050
- };
1051
-
1052
1027
  /**
1053
1028
  * Caption parameters.
1054
1029
  */
@@ -1163,7 +1138,7 @@ class CaptionParameters extends joint.BaseJavaClass
1163
1138
 
1164
1139
  /**
1165
1140
  * Caption test horizontal alignment.<br>
1166
- * Default valueAlignment.Center.
1141
+ * Default TextAlignment.CENTER.
1167
1142
  */
1168
1143
  getAlignment()
1169
1144
  {
@@ -1172,7 +1147,7 @@ class CaptionParameters extends joint.BaseJavaClass
1172
1147
 
1173
1148
  /**
1174
1149
  * Caption test horizontal alignment.<br>
1175
- * Default valueAlignment.Center.
1150
+ * Default TextAlignment.CENTER.
1176
1151
  */
1177
1152
  setAlignment(value)
1178
1153
  {
@@ -1308,7 +1283,7 @@ class Unit extends joint.BaseJavaClass
1308
1283
  }
1309
1284
 
1310
1285
  /**
1311
- * Returns a human-readable string representation of this Unit.
1286
+ * Returns a human-readable string representation of this Unit.<br>
1312
1287
  * @return A string that represents this Unit.
1313
1288
  */
1314
1289
  toString()
@@ -2224,10 +2199,8 @@ class DotCodeParameters extends joint.BaseJavaClass
2224
2199
  }
2225
2200
 
2226
2201
  /**
2227
- * <p>
2228
- * Identifies DotCode encode mode.
2202
+ * Identifies DotCode encode mode.<br>
2229
2203
  * Default value: Auto.
2230
- * </p>
2231
2204
  */
2232
2205
  getDotCodeEncodeMode()
2233
2206
  {
@@ -2236,8 +2209,8 @@ class DotCodeParameters extends joint.BaseJavaClass
2236
2209
  /**
2237
2210
  * <p>
2238
2211
  * Identifies DotCode encode mode.
2239
- * Default value: Auto.
2240
2212
  * </p>
2213
+ * Default value: Auto.
2241
2214
  */
2242
2215
  setDotCodeEncodeMode(value)
2243
2216
  {
@@ -2247,19 +2220,19 @@ class DotCodeParameters extends joint.BaseJavaClass
2247
2220
  /**
2248
2221
  * <p>
2249
2222
  * Indicates whether code is used for instruct reader to interpret the following data as instructions for initialization or reprogramming of the bar code reader.
2250
- * Default value is false.
2251
2223
  * </p>
2224
+ * Default value is false.
2252
2225
  */
2253
2226
  isReaderInitialization()
2254
2227
  { return this.getJavaClass().isReaderInitializationSync(); }
2255
2228
  /**
2256
2229
  * <p>
2257
2230
  * Indicates whether code is used for instruct reader to interpret the following data as instructions for initialization or reprogramming of the bar code reader.
2258
- * Default value is false.
2259
2231
  * </p>
2232
+ * Default value is false.
2260
2233
  */
2261
2234
  setReaderInitialization(value)
2262
- { this.getJavaClass().setReaderInitializationSync(value); }
2235
+ { this.getJavaClass().setReaderInitializationSync(value); }
2263
2236
 
2264
2237
  /**
2265
2238
  * <p>
@@ -2290,61 +2263,61 @@ class DotCodeParameters extends joint.BaseJavaClass
2290
2263
  * </p>
2291
2264
  */
2292
2265
  setDotCodeStructuredAppendModeBarcodesCount(value)
2293
- { this.getJavaClass().setDotCodeStructuredAppendModeBarcodesCountSync(value); }
2266
+ { this.getJavaClass().setDotCodeStructuredAppendModeBarcodesCountSync(value); }
2294
2267
 
2295
2268
  /**
2296
2269
  * <p>
2297
- * Identifies ECI encoding. Used when DotCodeEncodeMode is Auto.
2298
- * Default value: ISO-8859-1
2270
+ * Identifies ECI encoding. Used when DotCodeEncodeMode is AUTO.
2299
2271
  * </p>
2272
+ * Default value: ISO-8859-1
2300
2273
  */
2301
2274
  getECIEncoding()
2302
2275
  { return this.getJavaClass().getECIEncodingSync(); }
2303
2276
  /**
2304
2277
  * <p>
2305
- * Identifies ECI encoding. Used when DotCodeEncodeMode is Auto.
2278
+ * Identifies ECI encoding. Used when DotCodeEncodeMode is AUTO.<br>
2306
2279
  * Default value: ISO-8859-1
2307
2280
  * </p>
2308
2281
  */
2309
2282
  setECIEncoding(value)
2310
- { this.getJavaClass().setECIEncodingSync(value); }
2283
+ { this.getJavaClass().setECIEncodingSync(value); }
2311
2284
 
2312
2285
  /**
2313
2286
  * <p>
2314
2287
  * Identifies rows count. Sum of the number of rows plus the number of columns of a DotCode symbol must be odd. Number of rows must be at least 5.
2315
- * Default value: -1
2316
2288
  * </p>
2289
+ * Default value: -1
2317
2290
  */
2318
2291
  getRows()
2319
2292
  { return this.getJavaClass().getRowsSync(); }
2320
2293
  /**
2321
2294
  * <p>
2322
2295
  * Identifies rows count. Sum of the number of rows plus the number of columns of a DotCode symbol must be odd. Number of rows must be at least 5.
2323
- * Default value: -1
2324
2296
  * </p>
2297
+ * Default value: -1
2325
2298
  */
2326
2299
  setRows(value)
2327
- {
2328
- this.getJavaClass().setRowsSync(value);
2300
+ {
2301
+ this.getJavaClass().setRowsSync(value);
2329
2302
  }
2330
2303
 
2331
2304
  /**
2332
2305
  * <p>
2333
2306
  * Identifies columns count. Sum of the number of rows plus the number of columns of a DotCode symbol must be odd. Number of columns must be at least 5.
2334
- * Default value: -1
2335
2307
  * </p>
2308
+ * Default value: -1
2336
2309
  */
2337
2310
  getColumns()
2338
2311
  { return this.getJavaClass().getColumnsSync(); }
2339
2312
  /**
2340
2313
  * <p>
2341
2314
  * Identifies columns count. Sum of the number of rows plus the number of columns of a DotCode symbol must be odd. Number of columns must be at least 5.
2342
- * Default value: -1
2343
2315
  * </p>
2316
+ * Default value: -1
2344
2317
  */
2345
2318
  setColumns(value)
2346
- {
2347
- this.getJavaClass().setColumnsSync(value);
2319
+ {
2320
+ this.getJavaClass().setColumnsSync(value);
2348
2321
  }
2349
2322
 
2350
2323
  /**
@@ -2373,6 +2346,9 @@ class DotCodeParameters extends joint.BaseJavaClass
2373
2346
  }
2374
2347
  }
2375
2348
 
2349
+ /**
2350
+ * GS1 Composite bar parameters.
2351
+ */
2376
2352
  class GS1CompositeBarParameters extends joint.BaseJavaClass
2377
2353
  {
2378
2354
  constructor(javaClass)
@@ -3011,7 +2987,7 @@ class Pdf417Parameters extends joint.BaseJavaClass
3011
2987
  }
3012
2988
 
3013
2989
  /**
3014
- * Used to tell the encoder whether to add Macro PDF417 Terminator (codeword 922) to the segment.
2990
+ * Used to tell the encoder whether to add Macro PDF417 Terminator (codeword 922) to the segment.<br>
3015
2991
  * Applied only for Macro PDF417.
3016
2992
  */
3017
2993
  getPdf417MacroTerminator()
@@ -3020,7 +2996,7 @@ class Pdf417Parameters extends joint.BaseJavaClass
3020
2996
  }
3021
2997
 
3022
2998
  /**
3023
- * Used to tell the encoder whether to add Macro PDF417 Terminator (codeword 922) to the segment.
2999
+ * Used to tell the encoder whether to add Macro PDF417 Terminator (codeword 922) to the segment.<br>
3024
3000
  * Applied only for Macro PDF417.
3025
3001
  */
3026
3002
  setPdf417MacroTerminator(value)
@@ -3187,7 +3163,7 @@ class MaxiCodeParameters extends joint.BaseJavaClass
3187
3163
  }
3188
3164
 
3189
3165
  /**
3190
- * Sets ECI encoding. Used when MaxiCodeEncodeMode is AUTO.
3166
+ * Sets ECI encoding. Used when MaxiCodeEncodeMode is AUTO.<br>
3191
3167
  * Default value: ISO-8859-1
3192
3168
  */
3193
3169
  setECIEncoding(ECIEncoding)
@@ -3196,8 +3172,8 @@ class MaxiCodeParameters extends joint.BaseJavaClass
3196
3172
  }
3197
3173
 
3198
3174
  /**
3199
- * Gets a MaxiCode barcode id in structured append mode.
3200
- * ID must be a value between 1 and 8.
3175
+ * Gets a MaxiCode barcode id in structured append mode.<br>
3176
+ * ID must be a value between 1 and 8.<br>
3201
3177
  * Default value: 0
3202
3178
  */
3203
3179
  getMaxiCodeStructuredAppendModeBarcodeId()
@@ -3206,8 +3182,8 @@ class MaxiCodeParameters extends joint.BaseJavaClass
3206
3182
  }
3207
3183
 
3208
3184
  /**
3209
- * Sets a MaxiCode barcode id in structured append mode.
3210
- * ID must be a value between 1 and 8.
3185
+ * Sets a MaxiCode barcode id in structured append mode.<br>
3186
+ * ID must be a value between 1 and 8.<br>
3211
3187
  * Default value: 0
3212
3188
  */
3213
3189
  setMaxiCodeStructuredAppendModeBarcodeId(maxiCodeStructuredAppendModeBarcodeId)
@@ -3216,8 +3192,8 @@ class MaxiCodeParameters extends joint.BaseJavaClass
3216
3192
  }
3217
3193
 
3218
3194
  /**
3219
- * Gets a MaxiCode barcodes count in structured append mode.
3220
- * Count number must be a value between 2 and 8 (maximum barcodes count).
3195
+ * Gets a MaxiCode barcodes count in structured append mode.<br>
3196
+ * Count number must be a value between 2 and 8 (maximum barcodes count).<br>
3221
3197
  * Default value: -1
3222
3198
  */
3223
3199
  getMaxiCodeStructuredAppendModeBarcodesCount()
@@ -3226,8 +3202,8 @@ class MaxiCodeParameters extends joint.BaseJavaClass
3226
3202
  }
3227
3203
 
3228
3204
  /**
3229
- * Sets a MaxiCode barcodes count in structured append mode.
3230
- * Count number must be a value between 2 and 8 (maximum barcodes count).
3205
+ * Sets a MaxiCode barcodes count in structured append mode.<br>
3206
+ * Count number must be a value between 2 and 8 (maximum barcodes count).<br>
3231
3207
  * Default value: -1
3232
3208
  */
3233
3209
  setMaxiCodeStructuredAppendModeBarcodesCount(maxiCodeStructuredAppendModeBarcodesCount)
@@ -3668,8 +3644,6 @@ class ExtCodetextBuilder extends joint.BaseJavaClass
3668
3644
  * lTextBuilder.addPlainCodetext("t\\e\\\\st");
3669
3645
  * //generate codetext
3670
3646
  * String lCodetext = lTextBuilder.getExtendedCodetext();
3671
- *
3672
- *
3673
3647
  */
3674
3648
  class QrExtCodetextBuilder extends ExtCodetextBuilder
3675
3649
  {
@@ -3753,7 +3727,7 @@ class QrStructuredAppendParameters extends joint.BaseJavaClass
3753
3727
  }
3754
3728
 
3755
3729
  /**
3756
- * Gets the QR structured append mode parity data.
3730
+ * Gets the QR structured append mode parity data.
3757
3731
  */
3758
3732
  getParityByte()
3759
3733
  {
@@ -3761,7 +3735,7 @@ class QrStructuredAppendParameters extends joint.BaseJavaClass
3761
3735
  }
3762
3736
 
3763
3737
  /**
3764
- * Sets the QR structured append mode parity data.
3738
+ * Sets the QR structured append mode parity data.
3765
3739
  */
3766
3740
  setParityByte(value)
3767
3741
  {
@@ -3807,7 +3781,7 @@ class QrStructuredAppendParameters extends joint.BaseJavaClass
3807
3781
  *
3808
3782
  * This sample shows how to use MaxiCodeExtCodetextBuilder in Extended Mode.
3809
3783
  *
3810
- * <pre>
3784
+ * @example
3811
3785
  * //create codetext
3812
3786
  * let textBuilder = new MaxiCodeExtCodetextBuilder();
3813
3787
  * textBuilder.addECICodetext(ECIEncodings.Win1251, "Will");
@@ -3822,7 +3796,6 @@ class QrStructuredAppendParameters extends joint.BaseJavaClass
3822
3796
  * let generator = new BarcodeGenerator(EncodeTypes.MAXI_CODE, codetext);
3823
3797
  * generator.getParameters().getBarcode().getCodeTextParameters().setTwoDDisplayText("My Text");
3824
3798
  * generator.save("test.bmp", BarcodeImageFormat.BMP);
3825
- * </pre>
3826
3799
  */
3827
3800
  class MaxiCodeExtCodetextBuilder extends ExtCodetextBuilder
3828
3801
  {
@@ -3857,10 +3830,9 @@ class MaxiCodeExtCodetextBuilder extends ExtCodetextBuilder
3857
3830
 
3858
3831
  /**
3859
3832
  * <p>
3860
- * <p>Extended codetext generator for 2D DotCode barcodes for ExtendedCodetext Mode of DotCodeEncodeMode</p>
3861
- * </p><p><hr><blockquote><pre>
3862
- * <pre>
3863
- *
3833
+ * Extended codetext generator for 2D DotCode barcodes for ExtendedCodetext Mode of DotCodeEncodeMode
3834
+ * </p>
3835
+ * @example
3864
3836
  * //Extended codetext mode
3865
3837
  * //create codetext
3866
3838
  * let textBuilder = new DotCodeExtCodetextBuilder();
@@ -3878,12 +3850,8 @@ class MaxiCodeExtCodetextBuilder extends ExtCodetextBuilder
3878
3850
  * let codetext = textBuilder.getExtendedCodetext();
3879
3851
  * //generate
3880
3852
  * let generator = new BarcodeGenerator(EncodeTypes.DOT_CODE, codetext);
3881
- * {
3882
- * generator.getParameters().getBarcode().getDotCode().setDotCodeEncodeMode(DotCodeEncodeMode.EXTENDED_CODETEXT);
3883
- * generator.save("test.bmp", BarCodeImageFormat.BMP);
3884
- * }
3885
- * </pre>
3886
- * </pre></blockquote></hr></p>
3853
+ * generator.getParameters().getBarcode().getDotCode().setDotCodeEncodeMode(DotCodeEncodeMode.EXTENDED_CODETEXT);
3854
+ * generator.save("test.bmp", BarCodeImageFormat.BMP);
3887
3855
  */
3888
3856
  class DotCodeExtCodetextBuilder extends ExtCodetextBuilder
3889
3857
  {
@@ -3896,12 +3864,7 @@ class DotCodeExtCodetextBuilder extends ExtCodetextBuilder
3896
3864
  super(javaClass);
3897
3865
  }
3898
3866
 
3899
- static construct(javaClass)
3900
- {
3901
- let obj = new DotCodeExtCodetextBuilder();
3902
- obj.setJavaClass(javaClass)
3903
- return obj;
3904
- }
3867
+ init() {}
3905
3868
 
3906
3869
  /**
3907
3870
  * <p>
@@ -3919,9 +3882,9 @@ class DotCodeExtCodetextBuilder extends ExtCodetextBuilder
3919
3882
  * </p>
3920
3883
  */
3921
3884
  addFNC3SymbolSeparator()
3922
- {
3923
- this.getJavaClass().addFNC3SymbolSeparatorSync();
3924
- }
3885
+ {
3886
+ this.getJavaClass().addFNC3SymbolSeparatorSync();
3887
+ }
3925
3888
 
3926
3889
  /**
3927
3890
  * <p>
@@ -3955,112 +3918,339 @@ class DotCodeExtCodetextBuilder extends ExtCodetextBuilder
3955
3918
  {
3956
3919
  return this.getJavaClass().getExtendedCodetextSync();
3957
3920
  }
3958
-
3959
- init() {}
3960
3921
  }
3961
3922
 
3962
3923
  /**
3963
- * BarcodeClassifications EncodeTypes classification
3964
- * @enum
3924
+ * Code128 parameters.
3965
3925
  */
3966
- BarcodeClassifications =
3926
+ class Code128Parameters extends joint.BaseJavaClass
3927
+ {
3928
+ init()
3967
3929
  {
3968
- /**
3969
- * Unspecified classification
3970
- */
3971
- NONE: 0,
3972
-
3973
- /**
3974
- * Specifies 1D-barcode
3975
- */
3976
- TYPE_1D: 1,
3977
-
3978
- /**
3979
- * Specifies 2D-barcode
3980
- */
3981
- TYPE_2D: 2,
3982
-
3983
- /**
3984
- * Specifies POSTAL-barcode
3985
- */
3986
- POSTAL: 3,
3930
+ // TODO: Implement init() method.
3931
+ }
3987
3932
 
3988
- /**
3989
- * Specifies DataBar-barcode
3990
- */
3991
- DATABAR: 4,
3933
+ constructor(javaClass)
3934
+ {
3935
+ super(javaClass);
3936
+ this.init();
3937
+ }
3992
3938
 
3993
- /**
3994
- * Specifies COUPON-barcode
3995
- */
3996
- COUPON: 5
3997
- };
3939
+ /**
3940
+ * <p>
3941
+ * Gets or sets a Code128 encode mode.
3942
+ * Default value: Code128EncodeMode.Auto
3943
+ * </p>
3944
+ */
3945
+ getCode128EncodeMode()
3946
+ {
3947
+ return this.getJavaClass().getCode128EncodeModeSync();
3948
+ }
3949
+ /**
3950
+ * <p>
3951
+ * Gets or sets a Code128 encode mode.
3952
+ * Default value: Code128EncodeMode.Auto
3953
+ * </p>
3954
+ */
3955
+ setCode128EncodeMode(value)
3956
+ {
3957
+ this.getJavaClass().setCode128EncodeModeSync(value);
3958
+ }
3998
3959
 
3999
- /**
4000
- * FontStyle classification
4001
- * @enum
4002
- */
4003
- FontStyle =
3960
+ /**
3961
+ * Returns a human-readable string representation of this PatchCodeParameters.
3962
+ * @return string A string that represents this PatchCodeParameters.
3963
+ */
3964
+ toString()
4004
3965
  {
4005
- BOLD: 1,
4006
- ITALIC: 2,
4007
- REGULAR: 0,
4008
- STRIKEOUT: 8,
4009
- UNDERLINE: 4
4010
- };
3966
+ return this.getJavaClass().toStringSync();
3967
+ }
3968
+ }
4011
3969
 
4012
3970
  /**
4013
- * Specifies the start or stop symbol of the Codabar barcode specification.
4014
- * @enum
3971
+ * <p>
3972
+ * Han Xin parameters.
3973
+ * </p>
4015
3974
  */
4016
- CodabarSymbol =
3975
+ class HanXinParameters extends joint.BaseJavaClass
3976
+ {
3977
+ constructor(javaClass)
4017
3978
  {
3979
+ super(javaClass);
3980
+ this.init();
3981
+ }
4018
3982
 
4019
- /**
4020
- * Specifies character A as the start or stop symbol of the Codabar barcode specification.
4021
- */
4022
- A: 65,
4023
- /**
4024
- * Specifies character B as the start or stop symbol of the Codabar barcode specification.
4025
- */
4026
- B: 66,
4027
- /**
4028
- * Specifies character C as the start or stop symbol of the Codabar barcode specification.
4029
- */
4030
- C: 67,
4031
- /**
4032
- * Specifies character D as the start or stop symbol of the Codabar barcode specification.
4033
- */
4034
- D: 68,
4035
- };
4036
-
4037
- /**
4038
- * DataMatrix encoder's encoding mode, default to AUTO
4039
- * @enum
4040
- */
4041
- DataMatrixEncodeMode =
3983
+ init()
4042
3984
  {
3985
+ }
4043
3986
 
4044
- /**
4045
- * Automatically pick up the best encode mode for datamatrix encoding
4046
- */
4047
- AUTO: 0,
4048
- /**
4049
- * Encodes one alphanumeric or two numeric characters per byte
4050
- */
4051
- ASCII: 1,
4052
- /**
4053
- * Encode 8 bit values
4054
- */
4055
- FULL: 6,
4056
- /**
4057
- * Encode with the encoding specified in BarCodeGenerator.CodeTextEncoding
4058
- */
4059
- CUSTOM: 7,
3987
+ /**
3988
+ * <p>
3989
+ * Version of HanXin Code.
3990
+ * From Version01 to Version84 for Han Xin code.
3991
+ * Default value is HanXinVersion.Auto.
3992
+ * </p>
3993
+ */
3994
+ getHanXinVersion()
3995
+ {
3996
+ return this.getJavaClass().getHanXinVersionSync();
3997
+ }
4060
3998
 
3999
+ /**
4000
+ * <p>
4001
+ * Version of HanXin Code.
4002
+ * From Version01 to Version84 for Han Xin code.
4003
+ * Default value is HanXinVersion.Auto.
4004
+ * </p>
4005
+ */
4006
+ setHanXinVersion(value)
4007
+ {
4008
+ this.getJavaClass().setHanXinVersionSync(value);
4009
+ }
4061
4010
 
4062
- /**
4063
- * Uses C40 encoding. Encodes Upper-case alphanumeric, Lower case and special characters
4011
+ /**
4012
+ * <p>
4013
+ * Level of Reed-Solomon error correction for Han Xin barcode.
4014
+ * From low to high: L1, L2, L3, L4. see HanXinErrorLevel.
4015
+ * </p>
4016
+ */
4017
+ getHanXinErrorLevel()
4018
+ {
4019
+ return this.getJavaClass().getHanXinErrorLevelSync();
4020
+ }
4021
+ /**
4022
+ * <p>
4023
+ * Level of Reed-Solomon error correction for Han Xin barcode.
4024
+ * From low to high: L1, L2, L3, L4. see HanXinErrorLevel.
4025
+ * </p>
4026
+ */
4027
+ setHanXinErrorLevel(value)
4028
+ {
4029
+ this.getJavaClass().setHanXinErrorLevelSync(value);
4030
+ }
4031
+
4032
+ /**
4033
+ * <p>
4034
+ * HanXin encoding mode.
4035
+ * Default value: HanXinEncodeMode.Mixed.
4036
+ * </p>
4037
+ */
4038
+ getHanXinEncodeMode()
4039
+ {
4040
+ return this.getJavaClass().getHanXinEncodeModeSync();
4041
+ }
4042
+ /**
4043
+ * <p>
4044
+ * HanXin encoding mode.
4045
+ * Default value: HanXinEncodeMode.Mixed.
4046
+ * </p>
4047
+ */
4048
+ setHanXinEncodeMode(value)
4049
+ {
4050
+ this.getJavaClass().setHanXinEncodeModeSync(value);
4051
+ }
4052
+
4053
+ /**
4054
+ * <p>
4055
+ * Extended Channel Interpretation Identifiers. It is used to tell the barcode reader details
4056
+ * about the used references for encoding the data in the symbol.
4057
+ * Current implementation consists all well known charset encodings.
4058
+ * </p>
4059
+ */
4060
+ getHanXinECIEncoding()
4061
+ {
4062
+ return this.getJavaClass().getHanXinECIEncodingSync();
4063
+ }
4064
+ /**
4065
+ * <p>
4066
+ * Extended Channel Interpretation Identifiers. It is used to tell the barcode reader details
4067
+ * about the used references for encoding the data in the symbol.
4068
+ * Current implementation consists all well known charset encodings.
4069
+ * </p>
4070
+ */
4071
+ setHanXinECIEncoding(value)
4072
+ {
4073
+ this.getJavaClass().setHanXinECIEncodingSync(value);
4074
+ }
4075
+
4076
+
4077
+ /**
4078
+ * <p>
4079
+ * Returns a human-readable string representation of this {@code HanXinParameters}.
4080
+ * </p>
4081
+ * @return A string that represents this {@code HanXinParameters}.
4082
+ */
4083
+ toString()
4084
+ {
4085
+ return this.getJavaClass().toStringSync();
4086
+ }
4087
+ }
4088
+
4089
+ /**
4090
+ * Enable checksum validation during recognition for 1D barcodes.<br>
4091
+ * Default is treated as Yes for symbologies which must contain checksum, as No where checksum only possible.<br>
4092
+ * Checksum never used: Codabar<br>
4093
+ * Checksum is possible: Code39 Standard/Extended, Standard2of5, Interleaved2of5, Matrix2of5, ItalianPost25, DeutschePostIdentcode, DeutschePostLeitcode, VIN<br>
4094
+ * Checksum always used: Rest symbologies
4095
+ * @example
4096
+ * //This sample shows influence of ChecksumValidation on recognition quality and results
4097
+ * let generator = new BarcodeGenerator(EncodeTypes.EAN_13, "1234567890128");
4098
+ * generator.save("test.png", BarcodeImageFormat.PNG);
4099
+ * let reader = new BarCodeReader("test.png", DecodeType.EAN_13);
4100
+ * //checksum disabled
4101
+ * reader.setChecksumValidation(ChecksumValidation.OFF);
4102
+ * reader.readBarCodes().forEach(function(result, i, results)
4103
+ * {
4104
+ * console.log("BarCode CodeText: " + result.getCodeText());
4105
+ * console.log("BarCode Value: " + result.getExtended().getOneD().getValue());
4106
+ * console.log("BarCode Checksum: " + result.getExtended().getOneD().getCheckSum());
4107
+ * });
4108
+ * let reader = new BarCodeReader("test.png", DecodeType.EAN_13);
4109
+ * //checksum enabled
4110
+ * reader.setChecksumValidation(ChecksumValidation.ON);
4111
+ * reader.readBarCodes().forEach(function(result, i, results)
4112
+ * {
4113
+ * console.log("BarCode CodeText: " + result.getCodeText());
4114
+ * console.log("BarCode Value: " + result.getExtended().getOneD().getValue());
4115
+ * console.log("BarCode Checksum: " + result.getExtended().getOneD().getCheckSum());
4116
+ * });
4117
+ * @enum
4118
+ */
4119
+ ChecksumValidation =
4120
+ {
4121
+ /**
4122
+ * If checksum is required by the specification - it will be validated.
4123
+ */
4124
+ DEFAULT: 0,
4125
+
4126
+ /**
4127
+ * Always validate checksum if possible.
4128
+ */
4129
+ ON: 1,
4130
+
4131
+ /**
4132
+ * Do not validate checksum.
4133
+ */
4134
+ OFF: 2
4135
+ };
4136
+
4137
+ /**
4138
+ * BarcodeClassifications EncodeTypes classification
4139
+ * @enum
4140
+ */
4141
+ BarcodeClassifications =
4142
+ {
4143
+ /**
4144
+ * Unspecified classification
4145
+ */
4146
+ NONE: 0,
4147
+
4148
+ /**
4149
+ * Specifies 1D-barcode
4150
+ */
4151
+ TYPE_1D: 1,
4152
+
4153
+ /**
4154
+ * Specifies 2D-barcode
4155
+ */
4156
+ TYPE_2D: 2,
4157
+
4158
+ /**
4159
+ * Specifies POSTAL-barcode
4160
+ */
4161
+ POSTAL: 3,
4162
+
4163
+ /**
4164
+ * Specifies DataBar-barcode
4165
+ */
4166
+ DATABAR: 4,
4167
+
4168
+ /**
4169
+ * Specifies COUPON-barcode
4170
+ */
4171
+ COUPON: 5
4172
+ };
4173
+
4174
+ /**
4175
+ * FontStyle classification
4176
+ * @enum
4177
+ */
4178
+ FontStyle =
4179
+ {
4180
+ /**
4181
+ * Bold text
4182
+ */
4183
+ BOLD: 1,
4184
+ /**
4185
+ * Italic text
4186
+ */
4187
+ ITALIC: 2,
4188
+ /**
4189
+ * Normal text
4190
+ */
4191
+ REGULAR: 0,
4192
+ /**
4193
+ * Text with a line through the middle.
4194
+ */
4195
+ STRIKEOUT: 8,
4196
+ /**
4197
+ * Underlined text.
4198
+ */
4199
+ UNDERLINE: 4
4200
+ };
4201
+
4202
+ /**
4203
+ * Specifies the start or stop symbol of the Codabar barcode specification.
4204
+ * @enum
4205
+ */
4206
+ CodabarSymbol =
4207
+ {
4208
+
4209
+ /**
4210
+ * Specifies character A as the start or stop symbol of the Codabar barcode specification.
4211
+ */
4212
+ A: 65,
4213
+ /**
4214
+ * Specifies character B as the start or stop symbol of the Codabar barcode specification.
4215
+ */
4216
+ B: 66,
4217
+ /**
4218
+ * Specifies character C as the start or stop symbol of the Codabar barcode specification.
4219
+ */
4220
+ C: 67,
4221
+ /**
4222
+ * Specifies character D as the start or stop symbol of the Codabar barcode specification.
4223
+ */
4224
+ D: 68,
4225
+ };
4226
+
4227
+ /**
4228
+ * DataMatrix encoder's encoding mode, default to AUTO
4229
+ * @enum
4230
+ */
4231
+ DataMatrixEncodeMode =
4232
+ {
4233
+
4234
+ /**
4235
+ * Automatically pick up the best encode mode for datamatrix encoding
4236
+ */
4237
+ AUTO: 0,
4238
+ /**
4239
+ * Encodes one alphanumeric or two numeric characters per byte
4240
+ */
4241
+ ASCII: 1,
4242
+ /**
4243
+ * Encode 8 bit values
4244
+ */
4245
+ FULL: 6,
4246
+ /**
4247
+ * Encode with the encoding specified in BarCodeGenerator.CodeTextEncoding
4248
+ */
4249
+ CUSTOM: 7,
4250
+
4251
+
4252
+ /**
4253
+ * Uses C40 encoding. Encodes Upper-case alphanumeric, Lower case and special characters
4064
4254
  */
4065
4255
  C40: 8,
4066
4256
 
@@ -4080,10 +4270,10 @@ DataMatrixEncodeMode =
4080
4270
  ANSIX12: 11,
4081
4271
 
4082
4272
  /**
4083
- * ExtendedCodetext mode allows to manually switch encodation schemes in codetext.
4084
- * Allowed encodation schemes are: EDIFACT, ANSIX12, ASCII, C40, Text, Auto.
4085
- * Extended codetext example: @"\ansix12:ANSIX12TEXT\ascii:backslash must be \\ doubled\edifact:EdifactEncodedText"
4086
- * All backslashes (\) must be doubled in text.
4273
+ * ExtendedCodetext mode allows to manually switch encodation schemes in codetext.<br>
4274
+ * Allowed encodation schemes are: EDIFACT, ANSIX12, ASCII, C40, Text, Auto.<br>
4275
+ * Extended codetext example: @"\ansix12:ANSIX12TEXT\ascii:backslash must be \\ doubled\edifact:EdifactEncodedText"<br>
4276
+ * All backslashes (\) must be doubled in text.<br>
4087
4277
  *
4088
4278
  * @example
4089
4279
  * //This sample shows how to do codetext in Extended Mode.
@@ -4157,26 +4347,26 @@ ITF14BorderType =
4157
4347
  /**
4158
4348
  * Encoding mode for QR barcodes. It is recommended to Use AUTO with CodeTextEncoding = Encoding.UTF8 for latin symbols or digits and UTF_8_BOM for unicode symbols.
4159
4349
  * @example
4160
- * //Example how to use ECI encoding
4161
- * let generator = new BarcodeGenerator(EncodeTypes.QR);
4162
- * generator.setCodeText("12345TEXT");
4163
- * generator.getParameters().getBarcode().getQR().setQrEncodeMode(QREncodeMode.ECI_ENCODING);
4164
- * generator.getParameters().getBarcode().getQR().setQrEncodeType(QREncodeType.FORCE_QR);
4165
- * generator.getParameters().getBarcode().getQR().setQrECIEncoding(ECIEncodings.UTF8);
4166
- * generator.save("test.png", BarcodeImageFormat.PNG);
4350
+ * //Example how to use ECI encoding
4351
+ * let generator = new BarcodeGenerator(EncodeTypes.QR);
4352
+ * generator.setCodeText("12345TEXT");
4353
+ * generator.getParameters().getBarcode().getQR().setQrEncodeMode(QREncodeMode.ECI_ENCODING);
4354
+ * generator.getParameters().getBarcode().getQR().setQrEncodeType(QREncodeType.FORCE_QR);
4355
+ * generator.getParameters().getBarcode().getQR().setQrECIEncoding(ECIEncodings.UTF8);
4356
+ * generator.save("test.png", BarcodeImageFormat.PNG);
4167
4357
  *
4168
4358
  * @example
4169
- * //Example how to use FNC1 first position in Extended Mode
4170
- * QrExtCodetextBuilder textBuilder = new QrExtCodetextBuilder();
4171
- * textBuilder.addPlainCodetext("000%89%%0");
4172
- * textBuilder.addFNC1GroupSeparator();
4173
- * textBuilder.addPlainCodetext("12345&lt;FNC1&gt;");
4174
- * //generate barcode
4175
- * let generator = new BarcodeGenerator(EncodeTypes.QR);
4176
- * generator.setCodeText(textBuilder.getExtendedCodetext());
4177
- * generator.getParameters().getBarcode().getQR().setQrEncodeMode(QREncodeMode.EXTENDED_CODETEXT);
4178
- * generator.getParameters().getBarcode().getCodeTextParameters().setTwoDDisplayText("My Text");
4179
- * generator.save("d:/test.png", BarcodeImageFormat.PNG);
4359
+ * //Example how to use FNC1 first position in Extended Mode
4360
+ * QrExtCodetextBuilder textBuilder = new QrExtCodetextBuilder();
4361
+ * textBuilder.addPlainCodetext("000%89%%0");
4362
+ * textBuilder.addFNC1GroupSeparator();
4363
+ * textBuilder.addPlainCodetext("12345&lt;FNC1&gt;");
4364
+ * //generate barcode
4365
+ * let generator = new BarcodeGenerator(EncodeTypes.QR);
4366
+ * generator.setCodeText(textBuilder.getExtendedCodetext());
4367
+ * generator.getParameters().getBarcode().getQR().setQrEncodeMode(QREncodeMode.EXTENDED_CODETEXT);
4368
+ * generator.getParameters().getBarcode().getCodeTextParameters().setTwoDDisplayText("My Text");
4369
+ * generator.save("d:/test.png", BarcodeImageFormat.PNG);
4180
4370
  *
4181
4371
  * @example
4182
4372
  * // This sample shows how to use FNC1 second position in Extended Mode.
@@ -4234,20 +4424,18 @@ QREncodeMode =
4234
4424
  ECI_ENCODING: 4,
4235
4425
 
4236
4426
  /**
4237
- * <p>
4238
- * <p>Extended Channel mode which supports FNC1 first position, FNC1 second position and multi ECI modes.</p>
4239
- * <p>It is better to use QrExtCodetextBuilder for extended codetext generation.</p>
4240
- * <p>Use Display2DText property to set visible text to removing managing characters.</p>
4241
- * <p>Encoding Principles:</p>
4242
- * <p>All symbols "\" must be doubled "\\" in the codetext.</p>
4243
- * <p>FNC1 in first position is set in codetext as as "&lt;FNC1&gt;"</p>
4244
- * <p>FNC1 in second position is set in codetext as as "&lt;FNC1(value)&gt;". The value must be single symbols (a-z, A-Z) or digits from 0 to 99.</p>
4245
- * <p>Group Separator for FNC1 modes is set as 0x1D character '\\u001D' </p>
4246
- * <p> If you need to insert "&lt;FNC1&gt;" string into barcode write it as "&lt;\FNC1&gt;" </p>
4247
- * <p>ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier</p>
4248
- * <p>TO disable current ECI mode and convert to default JIS8 mode zero mode ECI indetifier is set. "\000000"</p>
4249
- * <p>All unicode characters after ECI identifier are automatically encoded into correct character codeset.</p>
4250
- * </p>
4427
+ * Extended Channel mode which supports FNC1 first position, FNC1 second position and multi ECI modes.<br>
4428
+ * It is better to use QrExtCodetextBuilder for extended codetext generation.<br>
4429
+ * Use Display2DText property to set visible text to removing managing characters.<br>
4430
+ * Encoding Principles:<br>
4431
+ * All symbols "\" must be doubled "\\" in the codetext.<br>
4432
+ * FNC1 in first position is set in codetext as as "&lt;FNC1&gt;"<br>
4433
+ * FNC1 in second position is set in codetext as as "&lt;FNC1(value)&gt;". The value must be single symbols (a-z, A-Z) or digits from 0 to 99.<br>
4434
+ * Group Separator for FNC1 modes is set as 0x1D character '\\u001D' <br>
4435
+ * If you need to insert "&lt;FNC1&gt;" string into barcode write it as "&lt;\FNC1&gt;" <br>
4436
+ * ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier<br>
4437
+ * TO disable current ECI mode and convert to default JIS8 mode zero mode ECI indetifier is set. "\000000"<br>
4438
+ * All unicode characters after ECI identifier are automatically encoded into correct character codeset.<br>
4251
4439
  */
4252
4440
  EXTENDED_CODETEXT: 5
4253
4441
 
@@ -4298,7 +4486,7 @@ DataMatrixEccType =
4298
4486
  QRVersion =
4299
4487
  {
4300
4488
  /**
4301
- * Specifies to automatically pick up the best version for QR.
4489
+ * Specifies to automatically pick up the best version for QR.<br>
4302
4490
  * This is default value.
4303
4491
  */
4304
4492
  AUTO: 0,
@@ -4538,23 +4726,23 @@ QRVersion =
4538
4726
  AztecSymbolMode =
4539
4727
  {
4540
4728
  /**
4541
- * Specifies to automatically pick up the best symbol (COMPACT or FULL-range) for Aztec.
4729
+ * Specifies to automatically pick up the best symbol (COMPACT or FULL-range) for Aztec.<br>
4542
4730
  * This is default value.
4543
4731
  * @enum
4544
4732
  */
4545
4733
  AUTO: 0,
4546
4734
  /**
4547
- * Specifies the COMPACT symbol for Aztec.
4735
+ * Specifies the COMPACT symbol for Aztec.<br>
4548
4736
  * Aztec COMPACT symbol permits only 1, 2, 3 or 4 layers.
4549
4737
  */
4550
4738
  COMPACT: 1,
4551
4739
  /**
4552
- * Specifies the FULL-range symbol for Aztec.
4740
+ * Specifies the FULL-range symbol for Aztec.<br>
4553
4741
  * Aztec FULL-range symbol permits from 1 to 32 layers.
4554
4742
  */
4555
4743
  FULL_RANGE: 2,
4556
4744
  /**
4557
- * Specifies the RUNE symbol for Aztec.
4745
+ * Specifies the RUNE symbol for Aztec.<br>
4558
4746
  * Aztec Runes are a series of small but distinct machine-readable marks. It permits only number value from 0 to 255.
4559
4747
  */
4560
4748
  RUNE: 3
@@ -4656,7 +4844,7 @@ QRErrorLevel =
4656
4844
 
4657
4845
 
4658
4846
  /**
4659
- * QR / MicroQR selector mode. Select FORCE_QR for standard QR symbols, AUTO for MicroQR.
4847
+ * QR / MicroQR selector mode. Select FORCE_QR for standard QR symbols, AUTO for MicroQR.<br>
4660
4848
  * FORCE_MICRO_QR is used for strongly MicroQR symbol generation if it is possible.
4661
4849
  * @enum
4662
4850
  */
@@ -4764,7 +4952,7 @@ TextAlignment =
4764
4952
  * let generator = new BarcodeGenerator(EncodeTypes.DATA_MATRIX);
4765
4953
  * generator.setAutoSizeMode(AutoSizeMode.NEAREST);
4766
4954
  * generator.getBarCodeWidth().setMillimeters(50);
4767
- * generator.getBarCodeHeight().setInches(1.3f); TODO
4955
+ * generator.getBarCodeHeight().setInches(1.3f);
4768
4956
  * generator.save("test.png", BarcodeImageFormat.PNG);
4769
4957
  *
4770
4958
  * @enum
@@ -4777,18 +4965,20 @@ AutoSizeMode =
4777
4965
  NONE: 0, //or CUSTOM, or DEFAULT
4778
4966
 
4779
4967
  /**
4780
- * Barcode resizes to nearest lowest possible size
4968
+ * Barcode resizes to nearest lowest possible size<br>
4781
4969
  * which are specified by BarCodeWidth and BarCodeHeight properties.
4782
4970
  */
4783
4971
  NEAREST: 1,
4784
4972
 
4785
4973
  /**
4786
- * Resizes barcode to specified size with little scaling
4787
- * but it can be little damaged in some cases
4788
- * because using interpolation for scaling.
4789
- * Size can be specified by BarcodeGenerator.BarCodeWidth
4790
- * and BarcodeGenerator.BarCodeHeight properties.
4974
+ * Resizes barcode to specified size with little scaling<br>
4975
+ * but it can be little damaged in some cases<br>
4976
+ * because using interpolation for scaling.<br>
4977
+ * Size can be specified by BarcodeGenerator.BarCodeWidth<br>
4978
+ * and BarcodeGenerator.BarCodeHeight properties.<br>
4979
+ * @example
4791
4980
  * This sample shows how to create and save a BarCode image in Scale mode.
4981
+ *
4792
4982
  * let generator = new BarcodeGenerator( EncodeTypes.DATA_MATRIX);
4793
4983
  * generator.getParameters().getBarcode().setAutoSizeMode(AutoSizeMode.INTERPOLATION);
4794
4984
  * generator.getParameters().getBarcode().getBarCodeWidth().setMillimeters(50);
@@ -4988,7 +5178,7 @@ EncodeTypes =
4988
5178
  VIN: 26,
4989
5179
 
4990
5180
  /**
4991
- * Represents Deutsch Post barcode, This EncodeType is also known as Identcode,CodeIdentcode,German Postal 2 of 5 Identcode,
5181
+ * Represents Deutsch Post barcode, This EncodeType is also known as Identcode,CodeIdentcode,German Postal 2 of 5 Identcode,<br>
4992
5182
  * Deutsch Post AG Identcode, Deutsch Frachtpost Identcode, Deutsch Post AG (DHL)
4993
5183
  */
4994
5184
  DEUTSCHE_POST_IDENTCODE: 27,
@@ -5169,7 +5359,8 @@ EncodeTypes =
5169
5359
  DUTCH_KIX: 61,
5170
5360
 
5171
5361
  /**
5172
- * Specifies that the data should be encoded with UPC coupon with GS1-128 Extended Code barcode specification.
5362
+ * Specifies that the data should be encoded with UPC coupon with GS1-128 Extended Code barcode specification.<br>
5363
+ * @example
5173
5364
  * An example of the input string:
5174
5365
  * BarCodeGenerator.setCodetext("514141100906(8102)03"),
5175
5366
  * where UPCA part is "514141100906", GS1Code128 part is (8102)03.
@@ -5177,7 +5368,8 @@ EncodeTypes =
5177
5368
  UPCA_GS_1_CODE_128_COUPON: 62,
5178
5369
 
5179
5370
  /**
5180
- * Specifies that the data should be encoded with UPC coupon with GS1 DataBar addition barcode specification.
5371
+ * Specifies that the data should be encoded with UPC coupon with GS1 DataBar addition barcode specification.<br>
5372
+ * @example
5181
5373
  * An example of the input string:
5182
5374
  * BarCodeGenerator.setCodetext("514141100906(8110)106141416543213500110000310123196000"),
5183
5375
  * where UPCA part is "514141100906, DATABAR part is "(8110)106141416543213500110000310123196000".
@@ -5277,6 +5469,16 @@ EncodeTypes =
5277
5469
  */
5278
5470
  GS_1_DOT_CODE: 78,
5279
5471
 
5472
+ /**
5473
+ * Specifies that the data should be encoded with <b>Han Xin</b> barcode specification
5474
+ */
5475
+ HAN_XIN: 79,
5476
+
5477
+ /**
5478
+ * 2D barcode symbology QR with GS1 string format
5479
+ */
5480
+ GS_1_HAN_XIN: 80,
5481
+
5280
5482
  parse(encodeTypeName)
5281
5483
  {
5282
5484
  if(encodeTypeName == "CODABAR") return 0;
@@ -5437,15 +5639,28 @@ EncodeTypes =
5437
5639
 
5438
5640
  else if(encodeTypeName == "GS_1_DOT_CODE") return 78;
5439
5641
 
5642
+ else if(encodeTypeName == "HAN_XIN") return 79;
5643
+
5644
+ else if(encodeTypeName == "GS_1_HAN_XIN") return 80;
5645
+
5440
5646
  else return -1;
5441
5647
  }
5442
5648
  }
5443
5649
 
5444
5650
  /**
5445
- * Macro Characters 05 and 06 values are used to obtain more compact encoding in special modes.
5446
- * 05 Macro craracter is translated to "[)>\u001E05\u001D" as decoded data header and "\u001E\u0004" as decoded data trailer.
5447
- * 06 Macro craracter is translated to "[)>\u001E06\u001D" as decoded data header and "\u001E\u0004" as decoded data trailer.
5448
- * @enum
5651
+ * Macro Characters 05 and 06 values are used to obtain more compact encoding in special modes.<br>
5652
+ * 05 Macro craracter is translated to "[)>\u001E05\u001D" as decoded data header and "\u001E\u0004" as decoded data trailer.<br>
5653
+ * 06 Macro craracter is translated to "[)>\u001E06\u001D" as decoded data header and "\u001E\u0004" as decoded data trailer.
5654
+ *
5655
+ * \code
5656
+ * //to generate autoidentified GS1 message like this "(10)123ABC(10)123ABC" in ISO 15434 format you need:
5657
+ * BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.DATA_MATRIX, "10123ABC\u001D10123ABC");
5658
+ * generator.getParameters().getBarcode().getDataMatrix().setMacroCharacters(MacroCharacter.MACRO_05);
5659
+ * BarCodeReader reader = new BarCodeReader(generator.generateBarCodeImage(), DecodeType.GS_1_DATA_MATRIX);
5660
+ * for(BarCodeResult result : reader.readBarCodes())
5661
+ * System.out.println("BarCode CodeText: " + result.getCodeText());
5662
+ * \endcode
5663
+ * @enum
5449
5664
  */
5450
5665
  MacroCharacter =
5451
5666
  {
@@ -5455,10 +5670,11 @@ MacroCharacter =
5455
5670
  NONE: 0,
5456
5671
 
5457
5672
  /**
5458
- * 05 Macro craracter is added to barcode data in first position.
5459
- * GS1 Data Identifier ISO 15434
5673
+ * 05 Macro craracter is added to barcode data in first position.<br>
5674
+ * GS1 Data Identifier ISO 15434<br>
5460
5675
  * Character is translated to "[)>\u001E05\u001D" as decoded data header and "\u001E\u0004" as decoded data trailer.
5461
5676
  *
5677
+ * @example
5462
5678
  * //to generate autoidentified GS1 message like this "(10)123ABC(10)123ABC" in ISO 15434 format you need:
5463
5679
  * let generator = new BarcodeGenerator(EncodeTypes.DATA_MATRIX, "10123ABC\u001D10123ABC");
5464
5680
  * generator.getParameters().getBarcode().getDataMatrix().setMacroCharacters(MacroCharacter.MACRO_05);
@@ -5471,8 +5687,8 @@ MacroCharacter =
5471
5687
  MACRO_05: 5,
5472
5688
 
5473
5689
  /**
5474
- * 06 Macro craracter is added to barcode data in first position.
5475
- * ASC MH10 Data Identifier ISO 15434
5690
+ * 06 Macro craracter is added to barcode data in first position.<br>
5691
+ * ASC MH10 Data Identifier ISO 15434<br>
5476
5692
  * Character is translated to "[)>\u001E06\u001D" as decoded data header and "\u001E\u0004" as decoded data trailer.
5477
5693
  */
5478
5694
  MACRO_06: 6
@@ -5511,10 +5727,11 @@ PatchFormat =
5511
5727
  };
5512
5728
 
5513
5729
  /**
5514
- * Extended Channel Interpretation Identifiers. It is used to tell the barcode reader details
5515
- * about the used references for encoding the data in the symbol.
5516
- * Current implementation consists all well known charset encodings.
5730
+ * Extended Channel Interpretation Identifiers. It is used to tell the barcode reader details<br>
5731
+ * about the used references for encoding the data in the symbol.<br>
5732
+ * Current implementation consists all well known charset encodings.<br>
5517
5733
  * Currently, it is used only for QR 2D barcode.
5734
+ *
5518
5735
  * @example
5519
5736
  * let generator = new BarcodeGenerator(EncodeTypes.QR);
5520
5737
  * generator.setCodeText("12345TEXT");
@@ -5749,9 +5966,29 @@ BarCodeImageFormat =
5749
5966
  SVG: 7
5750
5967
  };
5751
5968
 
5752
- /*
5753
- Specifies the type of 2D component
5754
- @enum
5969
+
5970
+ /**
5971
+ * Type of 2D component
5972
+ * This sample shows how to create and save a GS1 Composite Bar image.
5973
+ * Note that 1D codetext and 2D codetext are separated by symbol '/'
5974
+ * <code>
5975
+ * let codetext = "(01)03212345678906/(21)A1B2C3D4E5F6G7H8";
5976
+ * let generator = new BarcodeGenerator(EncodeTypes.GS1_COMPOSITE_BAR, codetext))
5977
+ *
5978
+ * generator.getParameters().getBarcode().getGS1CompositeBar().setLinearComponentType(EncodeTypes.GS1_CODE_128);
5979
+ * generator.getParameters().getBarcode().getGS1CompositeBar().setTwoDComponentType(TwoDComponentType.CC_A);
5980
+ *
5981
+ * // Aspect ratio of 2D component
5982
+ * generator.getParameters().getBarcode().getPdf417().setAspectRatio(3);
5983
+ * ///
5984
+ * // X-Dimension of 1D and 2D components
5985
+ * generator.getParameters().getBarcode().getXDimension().setPixels(3);
5986
+ * ///
5987
+ * // Height of 1D component
5988
+ * generator.getParameters().getBarcode().getBarHeight().setPixels(100);
5989
+ * ///
5990
+ * generator.save("test.png", BarcodeImageFormat.PNG);
5991
+ *
5755
5992
  */
5756
5993
  TwoDComponentType =
5757
5994
  {
@@ -5783,7 +6020,7 @@ TwoDComponentType =
5783
6020
  Pdf417MacroTerminator =
5784
6021
  {
5785
6022
  /**
5786
- * The terminator will be added automatically if the number of segments is provided
6023
+ * The terminator will be added automatically if the number of segments is provided<br>
5787
6024
  * and the current segment is the last one. In other cases, the terminator will not be added.
5788
6025
  */
5789
6026
  AUTO: 0,
@@ -5807,11 +6044,10 @@ Pdf417MacroTerminator =
5807
6044
  * //Auto mode
5808
6045
  * let codetext = "犬Right狗";
5809
6046
  * let generator = new BarcodeGenerator(EncodeTypes.MAXI_CODE, codetext));
5810
- * {
5811
- * generator.getParameters().getBarcode().getMaxiCode().setECIEncoding(ECIEncodings.UTF8);
5812
- * generator.save("test.bmp", BarcodeImageFormat.BMP);
5813
- * }
6047
+ * generator.getParameters().getBarcode().getMaxiCode().setECIEncoding(ECIEncodings.UTF8);
6048
+ * generator.save("test.bmp", BarcodeImageFormat.BMP);
5814
6049
  *
6050
+ * @example
5815
6051
  * //Bytes mode
5816
6052
  * let encodedArr = [ 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 ];
5817
6053
  *
@@ -5823,10 +6059,11 @@ Pdf417MacroTerminator =
5823
6059
  * });
5824
6060
  * let codetext = strBld;
5825
6061
  *
5826
- * let generator1 = new BarcodeGenerator(EncodeTypes.MAXI_CODE, codetext))
6062
+ * let generator = new BarcodeGenerator(EncodeTypes.MAXI_CODE, codetext))
5827
6063
  * generator.getParameters().getBarcode().getMaxiCode().setMaxiCodeEncodeMode(MaxiCodeEncodeMode.BYTES);
5828
6064
  * generator.save("test.bmp", BarcodeImageFormat.BMP);
5829
6065
  *
6066
+ * @example
5830
6067
  * //Extended codetext mode
5831
6068
  * //create codetext
5832
6069
  * let textBuilder = new MaxiCodeExtCodetextBuilder();
@@ -5845,37 +6082,37 @@ Pdf417MacroTerminator =
5845
6082
  * generator.save("test.bmp", BarcodeImageFormat.BMP);
5846
6083
  */
5847
6084
  MaxiCodeEncodeMode =
5848
- {
5849
-
5850
- /**
5851
- * Encode codetext with value set in the ECIEncoding property.
5852
- */
5853
- AUTO: 0,
5854
-
5855
- /**
5856
- * Encode codetext as plain bytes. If it detects any Unicode character, the character will be encoded as two bytes, lower byte first.
5857
- */
5858
- BYTES: 1,
5859
-
5860
- /**
5861
- * Extended mode which supports multi ECI modes.
5862
- * It is better to use MaxiCodeExtCodetextBuilder for extended codetext generation.
5863
- * Use Display2DText property to set visible text to removing managing characters.
5864
- * ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier
5865
- * All unicode characters after ECI identifier are automatically encoded into correct character codeset.
5866
- */
5867
- EXTENDED_CODETEXT: 2
5868
- }
6085
+ {
5869
6086
 
5870
- /**
5871
- * Encoding mode for MaxiCode barcodes.
5872
- *
5873
- * This sample shows how to genereate MaxiCode barcodes using ComplexBarcodeGenerator
5874
- * @example
5875
- * //Mode 2 with standart second message
5876
- * let maxiCodeCodetext = new MaxiCodeCodetextMode2();
5877
- * maxiCodeCodetext.setPostalCode("524032140");
5878
- * maxiCodeCodetext.setCountryCode(056);
6087
+ /**
6088
+ * Encode codetext with value set in the ECIEncoding property.
6089
+ */
6090
+ AUTO: 0,
6091
+
6092
+ /**
6093
+ * Encode codetext as plain bytes. If it detects any Unicode character, the character will be encoded as two bytes, lower byte first.
6094
+ */
6095
+ BYTES: 1,
6096
+
6097
+ /**
6098
+ * Extended mode which supports multi ECI modes.<br>
6099
+ * It is better to use MaxiCodeExtCodetextBuilder for extended codetext generation.<br>
6100
+ * Use Display2DText property to set visible text to removing managing characters.<br>
6101
+ * ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier<br>
6102
+ * All unicode characters after ECI identifier are automatically encoded into correct character codeset.
6103
+ */
6104
+ EXTENDED_CODETEXT: 2
6105
+ }
6106
+
6107
+ /**
6108
+ * Encoding mode for MaxiCode barcodes.<br>
6109
+ *
6110
+ * @example
6111
+ * This sample shows how to genereate MaxiCode barcodes using ComplexBarcodeGenerator
6112
+ * //Mode 2 with standart second message
6113
+ * let maxiCodeCodetext = new MaxiCodeCodetextMode2();
6114
+ * maxiCodeCodetext.setPostalCode("524032140");
6115
+ * maxiCodeCodetext.setCountryCode(056);
5879
6116
  * maxiCodeCodetext.setServiceCategory(999);
5880
6117
  * let maxiCodeStandartSecondMessage = new MaxiCodeStandartSecondMessage();
5881
6118
  * maxiCodeStandartSecondMessage.setMessage("Test message");
@@ -5883,6 +6120,7 @@ MaxiCodeEncodeMode =
5883
6120
  * let complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext);
5884
6121
  * complexGenerator.generateBarCodeImage(BarcodeImageFormat.PNG);
5885
6122
  *
6123
+ * @example
5886
6124
  * //Mode 2 with structured second message
5887
6125
  * let maxiCodeCodetext = new MaxiCodeCodetextMode2();
5888
6126
  * maxiCodeCodetext.setPostalCode("524032140");
@@ -5897,6 +6135,7 @@ MaxiCodeEncodeMode =
5897
6135
  * let complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext);
5898
6136
  * complexGenerator.generateBarCodeImage(BarcodeImageFormat.PNG);
5899
6137
  *
6138
+ * @example
5900
6139
  * //Mode 3 with standart second message
5901
6140
  * let maxiCodeCodetext = new MaxiCodeCodetextMode3();
5902
6141
  * maxiCodeCodetext.setPostalCode("B1050");
@@ -5908,6 +6147,7 @@ MaxiCodeEncodeMode =
5908
6147
  * let complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext);
5909
6148
  * complexGenerator.generateBarCodeImage(BarcodeImageFormat.PNG);
5910
6149
  *
6150
+ * @example
5911
6151
  * //Mode 3 with structured second message
5912
6152
  * let maxiCodeCodetext = new MaxiCodeCodetextMode3();
5913
6153
  * maxiCodeCodetext.setPostalCode("B1050");
@@ -5922,6 +6162,7 @@ MaxiCodeEncodeMode =
5922
6162
  * let complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext.getConstructedCodetext();
5923
6163
  * complexGenerator.generateBarCodeImage(BarcodeImageFormat.PNG);
5924
6164
  *
6165
+ * @example
5925
6166
  * //Mode 4
5926
6167
  * let maxiCodeCodetext = new MaxiCodeStandardCodetext();
5927
6168
  * maxiCodeCodetext.setMode(MaxiCodeMode.MODE_4);
@@ -5929,6 +6170,7 @@ MaxiCodeEncodeMode =
5929
6170
  * let complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext.getConstructedCodetext();
5930
6171
  * complexGenerator.generateBarCodeImage(BarcodeImageFormat.PNG);
5931
6172
  *
6173
+ * @example
5932
6174
  * //Mode 5
5933
6175
  * let maxiCodeCodetext = new MaxiCodeStandardCodetext();
5934
6176
  * maxiCodeCodetext.setMode(MaxiCodeMode.MODE_5);
@@ -5936,6 +6178,7 @@ MaxiCodeEncodeMode =
5936
6178
  * let complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext.getConstructedCodetext())
5937
6179
  * complexGenerator.generateBarCodeImage(BarcodeImageFormat.PNG);
5938
6180
  *
6181
+ * @example
5939
6182
  * //Mode 6
5940
6183
  * let maxiCodeCodetext = new MaxiCodeStandardCodetext();
5941
6184
  * maxiCodeCodetext.setMode(MaxiCodeMode.MODE_6);
@@ -5944,68 +6187,69 @@ MaxiCodeEncodeMode =
5944
6187
  * complexGenerator.generateBarCodeImage(BarcodeImageFormat.PNG);
5945
6188
  */
5946
6189
  MaxiCodeMode =
5947
- {
5948
-
5949
- /**
5950
- * Mode 2 encodes postal information in first message and data in second message.
5951
- * Has 9 digits postal code (used only in USA).
5952
- */
5953
- MODE_2: 2,
5954
-
5955
- /**
5956
- * Mode 3 encodes postal information in first message and data in second message.
5957
- * Has 6 alphanumeric postal code, used in the world.
5958
- */
5959
- MODE_3: 3,
6190
+ {
5960
6191
 
5961
- /**
5962
- * Mode 4 encodes data in first and second message, with short ECC correction.
5963
- */
5964
- MODE_4: 4,
6192
+ /**
6193
+ * Mode 2 encodes postal information in first message and data in second message.<br>
6194
+ * Has 9 digits postal code (used only in USA).
6195
+ */
6196
+ MODE_2: 2,
5965
6197
 
5966
- /**
5967
- * Mode 5 encodes data in first and second message, with long ECC correction.
5968
- */
5969
- MODE_5: 5,
6198
+ /**
6199
+ * Mode 3 encodes postal information in first message and data in second message.<br>
6200
+ * Has 6 alphanumeric postal code, used in the world.
6201
+ */
6202
+ MODE_3: 3,
5970
6203
 
5971
- /**
5972
- * Mode 6 encodes data in first and second message, with short ECC correction.
5973
- * Used to encode device.
5974
- */
5975
- MODE_6: 6
5976
- }
6204
+ /**
6205
+ * Mode 4 encodes data in first and second message, with short ECC correction.<br>
6206
+ */
6207
+ MODE_4: 4,
6208
+
6209
+ /**
6210
+ * Mode 5 encodes data in first and second message, with long ECC correction.
6211
+ */
6212
+ MODE_5: 5,
6213
+
6214
+ /**
6215
+ * Mode 6 encodes data in first and second message, with short ECC correction.<br>
6216
+ * Used to encode device.
6217
+ */
6218
+ MODE_6: 6
6219
+ }
5977
6220
 
5978
6221
  /**
5979
- * <p>
5980
6222
  * Encoding mode for DotCode barcodes.
5981
- * </p><p><hr><blockquote><pre>
5982
- * <pre>
6223
+ *
6224
+ * @example
5983
6225
  * //Auto mode with macros
5984
6226
  * let codetext = ""[)>\u001E05\u001DCodetextWithMacros05\u001E\u0004"";
5985
6227
  * let generator = new BarcodeGenerator(EncodeTypes.DOT_CODE, codetext);
5986
- * {
5987
- * generator.save("test.bmp", BarCodeImageFormat.BMP);
5988
- * }
6228
+ * generator.save("test.bmp", BarCodeImageFormat.BMP);
5989
6229
  *
6230
+ * @example
5990
6231
  * //Auto mode
5991
6232
  * let codetext = "犬Right狗";
5992
6233
  * let generator = new BarcodeGenerator(EncodeTypes.DOT_CODE, codetext);
5993
- * {
5994
- * generator.getParameters().getBarcode().getDotCode().setECIEncoding(ECIEncodings.UTF8);
5995
- * generator.save("test.bmp", BarCodeImageFormat.BMP);
5996
- * }
6234
+ * generator.getParameters().getBarcode().getDotCode().setECIEncoding(ECIEncodings.UTF8);
6235
+ * generator.save("test.bmp", BarCodeImageFormat.BMP);
5997
6236
  *
6237
+ * @example
5998
6238
  * //Bytes mode
5999
6239
  * let encodedArr = array( 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 );
6000
6240
  * //encode array to string
6001
6241
  * let codetext = "";
6002
6242
  * encodedArr.forEach(function(bval, i, bvals)
6243
+ * {
6003
6244
  * codetext += bval;
6245
+ * });
6246
+ *
6247
+ * @example
6004
6248
  * let generator = new BarcodeGenerator(EncodeTypes.DOT_CODE, codetext);
6005
- * {
6006
- * generator.getParameters().getBarcode().getDotCode().setDotCodeEncodeMode(DotCodeEncodeMode.BYTES);
6007
- * generator.save("test.bmp", BarCodeImageFormat.BMP);
6008
- * }
6249
+ * generator.getParameters().getBarcode().getDotCode().setDotCodeEncodeMode(DotCodeEncodeMode.BYTES);
6250
+ * generator.save("test.bmp", BarCodeImageFormat.BMP);
6251
+ *
6252
+ * @example
6009
6253
  * //Extended codetext mode
6010
6254
  * //create codetext
6011
6255
  * let textBuilder = new DotCodeExtCodetextBuilder();
@@ -6021,39 +6265,749 @@ MaxiCodeMode =
6021
6265
  * let codetext = textBuilder.getExtendedCodetext();
6022
6266
  * //generate
6023
6267
  * let generator = new BarcodeGenerator(EncodeTypes.DOT_CODE, codetext);
6024
- * {
6025
- * generator.getParameters().getBarcode().getDotCode().setDotCodeEncodeMode(DotCodeEncodeMode.EXTENDED_CODETEXT);
6026
- * generator.save("test.bmp", BarCodeImageFormat.BMP);
6027
- * }
6268
+ * generator.getParameters().getBarcode().getDotCode().setDotCodeEncodeMode(DotCodeEncodeMode.EXTENDED_CODETEXT);
6269
+ * generator.save("test.bmp", BarCodeImageFormat.BMP);
6270
+ */
6271
+ DotCodeEncodeMode =
6272
+ {
6273
+ /**
6274
+ * <p>
6275
+ * Encode codetext with value set in the ECIEncoding property.
6276
+ * </p>
6277
+ */
6278
+ AUTO: 0,
6279
+
6280
+ /**
6281
+ * <p>
6282
+ * Encode codetext as plain bytes. If it detects any Unicode character, the character will be encoded as two bytes, lower byte first.
6283
+ * </p>
6284
+ */
6285
+ BYTES: 1,
6286
+
6287
+ /**
6288
+ * <p>Extended mode which supports multi ECI modes.</p>
6289
+ * <p>It is better to use DotCodeExtCodetextBuilder for extended codetext generation.</p>
6290
+ * <p>Use Display2DText property to set visible text to removing managing characters.</p>
6291
+ * <p>ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier</p>
6292
+ * <p>All unicode characters after ECI identifier are automatically encoded into correct character codeset.</p>
6293
+ */
6294
+ EXTENDED_CODETEXT: 2
6295
+ }
6296
+
6297
+
6298
+ /**
6299
+ * <p>
6300
+ * Encoding mode for Code128 barcodes.
6301
+ * {@code Code 128} specification.
6302
+ * </p><p><hr><blockquote><pre>
6303
+ * Thos code demonstrates how to generate code 128 with different encodings
6304
+ * <pre>
6305
+ *
6306
+ * //Generate code 128 with ISO 15417 encoding
6307
+ *
6308
+ * let generator = new BarcodeGenerator(EncodeTypes.CODE_128, "ABCD1234567890");
6309
+ * generator.getParameters().getBarcode().getCode128().setCode128EncodeMode(Code128EncodeMode.AUTO);
6310
+ * generator.save("d:\\code128Auto.png", BarCodeImageFormat.PNG);
6311
+ *
6312
+ * //Generate code 128 only with Codeset A encoding
6313
+ * let generator = new BarcodeGenerator(EncodeTypes.CODE_128, "ABCD1234567890");
6314
+ * generator.getParameters().getBarcode().getCode128().setCode128EncodeMode(Code128EncodeMode.CODE_A);
6315
+ * generator.save("d:\\code128CodeA.png", BarCodeImageFormat.PNG);
6028
6316
  * </pre>
6029
6317
  * </pre></blockquote></hr></p>
6030
6318
  */
6031
- DotCodeEncodeMode =
6319
+ Code128EncodeMode =
6320
+ {
6321
+ /**
6322
+ * <p>
6323
+ * Encode codetext in classic ISO 15417 mode. The mode should be used in all ordinary cases.
6324
+ * </p>
6325
+ */
6326
+ AUTO: 0,
6327
+
6328
+ /**
6329
+ * <p>
6330
+ * Encode codetext only in 128A codeset.
6331
+ * </p>
6332
+ */
6333
+ CODE_A: 1,
6334
+
6335
+ /**
6336
+ * <p>
6337
+ * Encode codetext only in 128B codeset.
6338
+ * </p>
6339
+ */
6340
+ CODE_B: 2,
6341
+
6342
+ /**
6343
+ * <p>
6344
+ * Encode codetext only in 128C codeset.
6345
+ * </p>
6346
+ */
6347
+ CODE_C: 4,
6348
+
6349
+ /**
6350
+ * <p>
6351
+ * Encode codetext only in 128A and 128B codesets.
6352
+ * </p>
6353
+ */
6354
+ CODE_AB: 3,
6355
+
6356
+ /**
6357
+ * <p>
6358
+ * Encode codetext only in 128A and 128C codesets.
6359
+ * </p>
6360
+ */
6361
+ CODE_AC: 5,
6362
+
6363
+ /**
6364
+ * <p>
6365
+ * Encode codetext only in 128B and 128C codesets.
6366
+ * </p>
6367
+ */
6368
+ CODE_BC: 6
6369
+ }
6370
+
6371
+ /**
6372
+ * <p>
6373
+ * Version of Han Xin Code.
6374
+ * From Version01 - 23 x 23 modules to Version84 - 189 x 189 modules, increasing in steps of 2 modules per side.
6375
+ * </p>
6376
+ */
6377
+ HanXinVersion =
6032
6378
  {
6033
6379
  /**
6034
6380
  * <p>
6035
- * Encode codetext with value set in the ECIEncoding property.
6381
+ * Specifies to automatically pick up the best version.
6382
+ * This is default value.
6036
6383
  * </p>
6037
6384
  */
6038
- AUTO: 0,
6039
-
6385
+ AUTO:0,
6040
6386
  /**
6041
6387
  * <p>
6042
- * Encode codetext as plain bytes. If it detects any Unicode character, the character will be encoded as two bytes, lower byte first.
6388
+ * Specifies version 1 with 23 x 23 modules.
6043
6389
  * </p>
6044
6390
  */
6045
- BYTES: 1,
6046
-
6391
+ VERSION_01:1,
6392
+ /**
6393
+ * <p>
6394
+ * Specifies version 2 with 25 x 25 modules.
6395
+ * </p>
6396
+ */
6397
+ VERSION_02:2,
6398
+ /**
6399
+ * <p>
6400
+ * Specifies version 3 with 27 x 27 modules.
6401
+ * </p>
6402
+ */
6403
+ VERSION_03:3,
6404
+ /**
6405
+ * <p>
6406
+ * Specifies version 4 with 29 x 29 modules.
6407
+ * </p>
6408
+ */
6409
+ VERSION_04:4,
6410
+ /**
6411
+ * <p>
6412
+ * Specifies version 5 with 31 x 31 modules.
6413
+ * </p>
6414
+ */
6415
+ VERSION_05:5,
6416
+ /**
6417
+ * <p>
6418
+ * Specifies version 6 with 33 x 33 modules.
6419
+ * </p>
6420
+ */
6421
+ VERSION_06:6,
6422
+ /**
6423
+ * <p>
6424
+ * Specifies version 7 with 35 x 35 modules.
6425
+ * </p>
6426
+ */
6427
+ VERSION_07:7,
6428
+ /**
6429
+ * <p>
6430
+ * Specifies version 8 with 37 x 37 modules.
6431
+ * </p>
6432
+ */
6433
+ VERSION_08:8,
6434
+ /**
6435
+ * <p>
6436
+ * Specifies version 9 with 39 x 39 modules.
6437
+ * </p>
6438
+ */
6439
+ VERSION_09:9,
6440
+ /**
6441
+ * <p>
6442
+ * Specifies version 10 with 41 x 41 modules.
6443
+ * </p>
6444
+ */
6445
+ VERSION_10:10,
6446
+ /**
6447
+ * <p>
6448
+ * Specifies version 11 with 43 x 43 modules.
6449
+ * </p>
6450
+ */
6451
+ VERSION_11:11,
6452
+ /**
6453
+ * <p>
6454
+ * Specifies version 12 with 45 x 45 modules.
6455
+ * </p>
6456
+ */
6457
+ VERSION_12:12,
6458
+ /**
6459
+ * <p>
6460
+ * Specifies version 13 with 47 x 47 modules.
6461
+ * </p>
6462
+ */
6463
+ VERSION_13:13,
6464
+ /**
6465
+ * <p>
6466
+ * Specifies version 14 with 49 x 49 modules.
6467
+ * </p>
6468
+ */
6469
+ VERSION_14:14,
6470
+ /**
6471
+ * <p>
6472
+ * Specifies version 15 with 51 x 51 modules.
6473
+ * </p>
6474
+ */
6475
+ VERSION_15:15,
6476
+ /**
6477
+ * <p>
6478
+ * Specifies version 16 with 53 x 53 modules.
6479
+ * </p>
6480
+ */
6481
+ VERSION_16:16,
6482
+ /**
6483
+ * <p>
6484
+ * Specifies version 17 with 55 x 55 modules.
6485
+ * </p>
6486
+ */
6487
+ VERSION_17:17,
6488
+ /**
6489
+ * <p>
6490
+ * Specifies version 18 with 57 x 57 modules.
6491
+ * </p>
6492
+ */
6493
+ VERSION_18:18,
6494
+ /**
6495
+ * <p>
6496
+ * Specifies version 19 with 59 x 59 modules.
6497
+ * </p>
6498
+ */
6499
+ VERSION_19:19,
6500
+ /**
6501
+ * <p>
6502
+ * Specifies version 20 with 61 x 61 modules.
6503
+ * </p>
6504
+ */
6505
+ VERSION_20:20,
6506
+ /**
6507
+ * <p>
6508
+ * Specifies version 21 with 63 x 63 modules.
6509
+ * </p>
6510
+ */
6511
+ VERSION_21:21,
6512
+ /**
6513
+ * <p>
6514
+ * Specifies version 22 with 65 x 65 modules.
6515
+ * </p>
6516
+ */
6517
+ VERSION_22:22,
6518
+ /**
6519
+ * <p>
6520
+ * Specifies version 23 with 67 x 67 modules.
6521
+ * </p>
6522
+ */
6523
+ VERSION_23:23,
6524
+ /**
6525
+ * <p>
6526
+ * Specifies version 24 with 69 x 69 modules.
6527
+ * </p>
6528
+ */
6529
+ VERSION_24:24,
6530
+ /**
6531
+ * <p>
6532
+ * Specifies version 25 with 71 x 71 modules.
6533
+ * </p>
6534
+ */
6535
+ VERSION_25:25,
6536
+ /**
6537
+ * <p>
6538
+ * Specifies version 26 with 73 x 73 modules.
6539
+ * </p>
6540
+ */
6541
+ VERSION_26:26,
6542
+ /**
6543
+ * <p>
6544
+ * Specifies version 27 with 75 x 75 modules.
6545
+ * </p>
6546
+ */
6547
+ VERSION_27:27,
6548
+ /**
6549
+ * <p>
6550
+ * Specifies version 28 with 77 x 77 modules.
6551
+ * </p>
6552
+ */
6553
+ VERSION_28:28,
6554
+ /**
6555
+ * <p>
6556
+ * Specifies version 29 with 79 x 79 modules.
6557
+ * </p>
6558
+ */
6559
+ VERSION_29:29,
6560
+ /**
6561
+ * <p>
6562
+ * Specifies version 30 with 81 x 81 modules.
6563
+ * </p>
6564
+ */
6565
+ VERSION_30:30,
6566
+ /**
6567
+ * <p>
6568
+ * Specifies version 31 with 83 x 83 modules.
6569
+ * </p>
6570
+ */
6571
+ VERSION_31:31,
6572
+ /**
6573
+ * <p>
6574
+ * Specifies version 32 with 85 x 85 modules.
6575
+ * </p>
6576
+ */
6577
+ VERSION_32:32,
6578
+ /**
6579
+ * <p>
6580
+ * Specifies version 33 with 87 x 87 modules.
6581
+ * </p>
6582
+ */
6583
+ VERSION_33:33,
6584
+ /**
6585
+ * <p>
6586
+ * Specifies version 34 with 89 x 89 modules.
6587
+ * </p>
6588
+ */
6589
+ VERSION_34:34,
6590
+ /**
6591
+ * <p>
6592
+ * Specifies version 35 with 91 x 91 modules.
6593
+ * </p>
6594
+ */
6595
+ VERSION_35:35,
6596
+ /**
6597
+ * <p>
6598
+ * Specifies version 36 with 93 x 93 modules.
6599
+ * </p>
6600
+ */
6601
+ VERSION_36:36,
6602
+ /**
6603
+ * <p>
6604
+ * Specifies version 37 with 95 x 95 modules.
6605
+ * </p>
6606
+ */
6607
+ VERSION_37:37,
6608
+ /**
6609
+ * <p>
6610
+ * Specifies version 38 with 97 x 97 modules.
6611
+ * </p>
6612
+ */
6613
+ VERSION_38:38,
6614
+ /**
6615
+ * <p>
6616
+ * Specifies version 39 with 99 x 99 modules.
6617
+ * </p>
6618
+ */
6619
+ VERSION_39:39,
6620
+ /**
6621
+ * <p>
6622
+ * Specifies version 40 with 101 x 101 modules.
6623
+ * </p>
6624
+ */
6625
+ VERSION_40:40,
6626
+ /**
6627
+ * <p>
6628
+ * Specifies version 41 with 103 x 103 modules.
6629
+ * </p>
6630
+ */
6631
+ VERSION_41:41,
6632
+ /**
6633
+ * <p>
6634
+ * Specifies version 42 with 105 x 105 modules.
6635
+ * </p>
6636
+ */
6637
+ VERSION_42:42,
6638
+ /**
6639
+ * <p>
6640
+ * Specifies version 43 with 107 x 107 modules.
6641
+ * </p>
6642
+ */
6643
+ VERSION_43:43,
6644
+ /**
6645
+ * <p>
6646
+ * Specifies version 44 with 109 x 109 modules.
6647
+ * </p>
6648
+ */
6649
+ VERSION_44:44,
6650
+ /**
6651
+ * <p>
6652
+ * Specifies version 45 with 111 x 111 modules.
6653
+ * </p>
6654
+ */
6655
+ VERSION_45:45,
6656
+ /**
6657
+ * <p>
6658
+ * Specifies version 46 with 113 x 113 modules.
6659
+ * </p>
6660
+ */
6661
+ VERSION_46:46,
6662
+ /**
6663
+ * <p>
6664
+ * Specifies version 47 with 115 x 115 modules.
6665
+ * </p>
6666
+ */
6667
+ VERSION_47:47,
6668
+ /**
6669
+ * <p>
6670
+ * Specifies version 48 with 117 x 117 modules.
6671
+ * </p>
6672
+ */
6673
+ VERSION_48:48,
6674
+ /**
6675
+ * <p>
6676
+ * Specifies version 49 with 119 x 119 modules.
6677
+ * </p>
6678
+ */
6679
+ VERSION_49:49,
6680
+ /**
6681
+ * <p>
6682
+ * Specifies version 50 with 121 x 121 modules.
6683
+ * </p>
6684
+ */
6685
+ VERSION_50:50,
6686
+ /**
6687
+ * <p>
6688
+ * Specifies version 51 with 123 x 123 modules.
6689
+ * </p>
6690
+ */
6691
+ VERSION_51:51,
6692
+ /**
6693
+ * <p>
6694
+ * Specifies version 52 with 125 x 125 modules.
6695
+ * </p>
6696
+ */
6697
+ VERSION_52:52,
6698
+ /**
6699
+ * <p>
6700
+ * Specifies version 53 with 127 x 127 modules.
6701
+ * </p>
6702
+ */
6703
+ VERSION_53:53,
6704
+ /**
6705
+ * <p>
6706
+ * Specifies version 54 with 129 x 129 modules.
6707
+ * </p>
6708
+ */
6709
+ VERSION_54:54,
6710
+ /**
6711
+ * <p>
6712
+ * Specifies version 55 with 131 x 131 modules.
6713
+ * </p>
6714
+ */
6715
+ VERSION_55:55,
6716
+ /**
6717
+ * <p>
6718
+ * Specifies version 56 with 133 x 133 modules.
6719
+ * </p>
6720
+ */
6721
+ VERSION_56:56,
6722
+ /**
6723
+ * <p>
6724
+ * Specifies version 57 with 135 x 135 modules.
6725
+ * </p>
6726
+ */
6727
+ VERSION_57:57,
6728
+ /**
6729
+ * <p>
6730
+ * Specifies version 58 with 137 x 137 modules.
6731
+ * </p>
6732
+ */
6733
+ VERSION_58:58,
6734
+ /**
6735
+ * <p>
6736
+ * Specifies version 59 with 139 x 139 modules.
6737
+ * </p>
6738
+ */
6739
+ VERSION_59:59,
6740
+ /**
6741
+ * <p>
6742
+ * Specifies version 60 with 141 x 141 modules.
6743
+ * </p>
6744
+ */
6745
+ VERSION_60:60,
6746
+ /**
6747
+ * <p>
6748
+ * Specifies version 61 with 143 x 143 modules.
6749
+ * </p>
6750
+ */
6751
+ VERSION_61:61,
6752
+ /**
6753
+ * <p>
6754
+ * Specifies version 62 with 145 x 145 modules.
6755
+ * </p>
6756
+ */
6757
+ VERSION_62:62,
6758
+ /**
6759
+ * <p>
6760
+ * Specifies version 63 with 147 x 147 modules.
6761
+ * </p>
6762
+ */
6763
+ VERSION_63:63,
6764
+ /**
6765
+ * <p>
6766
+ * Specifies version 64 with 149 x 149 modules.
6767
+ * </p>
6768
+ */
6769
+ VERSION_64:64,
6770
+ /**
6771
+ * <p>
6772
+ * Specifies version 65 with 151 x 151 modules.
6773
+ * </p>
6774
+ */
6775
+ VERSION_65:65,
6776
+ /**
6777
+ * <p>
6778
+ * Specifies version 66 with 153 x 153 modules.
6779
+ * </p>
6780
+ */
6781
+ VERSION_66:66,
6782
+ /**
6783
+ * <p>
6784
+ * Specifies version 67 with 155 x 155 modules.
6785
+ * </p>
6786
+ */
6787
+ VERSION_67:67,
6788
+ /**
6789
+ * <p>
6790
+ * Specifies version 68 with 157 x 157 modules.
6791
+ * </p>
6792
+ */
6793
+ VERSION_68:68,
6794
+ /**
6795
+ * <p>
6796
+ * Specifies version 69 with 159 x 159 modules.
6797
+ * </p>
6798
+ */
6799
+ VERSION_69:69,
6800
+ /**
6801
+ * <p>
6802
+ * Specifies version 70 with 161 x 161 modules.
6803
+ * </p>
6804
+ */
6805
+ VERSION_70:70,
6806
+ /**
6807
+ * <p>
6808
+ * Specifies version 71 with 163 x 163 modules.
6809
+ * </p>
6810
+ */
6811
+ VERSION_71:71,
6812
+ /**
6813
+ * <p>
6814
+ * Specifies version 72 with 165 x 165 modules.
6815
+ * </p>
6816
+ */
6817
+ VERSION_72:72,
6818
+ /**
6819
+ * <p>
6820
+ * Specifies version 73 with 167 x 167 modules.
6821
+ * </p>
6822
+ */
6823
+ VERSION_73:73,
6824
+ /**
6825
+ * <p>
6826
+ * Specifies version 74 with 169 x 169 modules.
6827
+ * </p>
6828
+ */
6829
+ VERSION_74:74,
6830
+ /**
6831
+ * <p>
6832
+ * Specifies version 75 with 171 x 171 modules.
6833
+ * </p>
6834
+ */
6835
+ VERSION_75:75,
6836
+ /**
6837
+ * <p>
6838
+ * Specifies version 76 with 173 x 173 modules.
6839
+ * </p>
6840
+ */
6841
+ VERSION_76:76,
6842
+ /**
6843
+ * <p>
6844
+ * Specifies version 77 with 175 x 175 modules.
6845
+ * </p>
6846
+ */
6847
+ VERSION_77:77,
6848
+ /**
6849
+ * <p>
6850
+ * Specifies version 78 with 177 x 177 modules.
6851
+ * </p>
6852
+ */
6853
+ VERSION_78:78,
6854
+ /**
6855
+ * <p>
6856
+ * Specifies version 79 with 179 x 179 modules.
6857
+ * </p>
6858
+ */
6859
+ VERSION_79:79,
6860
+ /**
6861
+ * <p>
6862
+ * Specifies version 80 with 181 x 181 modules.
6863
+ * </p>
6864
+ */
6865
+ VERSION_80:80,
6866
+ /**
6867
+ * <p>
6868
+ * Specifies version 81 with 183 x 183 modules.
6869
+ * </p>
6870
+ */
6871
+ VERSION_81:81,
6872
+ /**
6873
+ * <p>
6874
+ * Specifies version 82 with 185 x 185 modules.
6875
+ * </p>
6876
+ */
6877
+ VERSION_82:82,
6878
+ /**
6879
+ * <p>
6880
+ * Specifies version 83 with 187 x 187 modules.
6881
+ * </p>
6882
+ */
6883
+ VERSION_83:83,
6884
+ /**
6885
+ * <p>
6886
+ * Specifies version 84 with 189 x 189 modules.
6887
+ * </p>
6888
+ */
6889
+ VERSION_84:84,
6890
+ }
6891
+
6892
+ /**
6893
+ * <p>
6894
+ * Level of Reed-Solomon error correction. From low to high: L1, L2, L3, L4.
6895
+ * </p>
6896
+ */
6897
+ HanXinErrorLevel =
6898
+ {
6899
+ /**
6900
+ * <p>
6901
+ * Allows recovery of 8% of the code text
6902
+ * </p>
6903
+ */
6904
+ L1:0,
6905
+ /**
6906
+ * <p>
6907
+ * Allows recovery of 15% of the code text
6908
+ * </p>
6909
+ */
6910
+ L2:1,
6911
+ /**
6912
+ * <p>
6913
+ * Allows recovery of 23% of the code text
6914
+ * </p>
6915
+ */
6916
+ L3:2,
6917
+ /**
6918
+ * <p>
6919
+ * Allows recovery of 30% of the code text
6920
+ * </p>
6921
+ */
6922
+ L4:3
6923
+ }
6924
+
6925
+ /**
6926
+ * <p>
6927
+ * Han Xin Code encoding mode. It is recommended to use Auto with ASCII / Chinese characters or Unicode for Unicode characters.
6928
+ * </p><p><hr><blockquote><pre>
6929
+ * <pre>
6930
+ * @example
6931
+ * // Auto mode
6932
+ * let codetext = "1234567890ABCDEFGabcdefg,Han Xin Code";
6933
+ * let generator = new BarcodeGenerator(EncodeTypes.HAN_XIN, codetext);
6934
+ * generator.save("test.bmp", BarcodeImageFormat.BMP);
6935
+ *
6936
+ * @example
6937
+ * // Bytes mode
6938
+ * let encodedArr = [0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9];
6939
+ *
6940
+ * //encode array to string
6941
+ * let codetext = "";
6942
+ * for (int i = 0; i <encodedArr.length; i++)
6943
+ * {
6944
+ * let bval = String.fromCharCode(encodedArr[i]);
6945
+ * codetext += bval;
6946
+ * }
6947
+ *
6948
+ * let generator = new BarcodeGenerator(EncodeTypes.HAN_XIN, codetext);
6949
+ * generator.getParameters().getBarcode().getHanXin().setHanXinEncodeMode(HanXinEncodeMode.BYTES);
6950
+ * generator.save("test.bmp", BarcodeImageFormat.BMP);
6951
+ *
6952
+ * @example
6953
+ * // ECI mode
6954
+ * let codetext = "ΑΒΓΔΕ";
6955
+ * let generator = new BarcodeGenerator(EncodeTypes.HAN_XIN, codetext);
6956
+ * generator.getParameters().getBarcode().getHanXin().setHanXinEncodeMode(HanXinEncodeMode.ECI);
6957
+ * generator.getParameters().getBarcode().getHanXin().setHanXinECIEncoding(ECIEncodings.ISO_8859_7);
6958
+ * generator.save("test.bmp", BarcodeImageFormat.BMP);
6959
+ *
6960
+ * @example
6961
+ * // URI mode
6962
+ * let codetext = "https://www.test.com/%BC%DE%%%ab/search=test";
6963
+ * generator = new BarcodeGenerator(EncodeTypes.HAN_XIN, codetext);
6964
+ * generator.getParameters().getBarcode().getHanXin().setHanXinEncodeMode(HanXinEncodeMode.URI);
6965
+ * generator.save("test.bmp", BarcodeImageFormat.BMP);
6966
+ *
6967
+ * // Extended mode - TBD
6968
+ * </pre>
6969
+ * </pre></blockquote></hr></p>
6970
+ */
6971
+ HanXinEncodeMode =
6972
+ {
6973
+ /**
6974
+ * <p>
6975
+ * Sequence of Numeric, Text, ECI, Binary Bytes and 4 GB18030 modes changing automatically.
6976
+ * </p>
6977
+ */
6978
+ AUTO:0,
6979
+ /**
6980
+ * <p>
6981
+ * Binary byte mode encodes binary data in any form and encodes them in their binary byte. Every byte in
6982
+ * Binary Byte mode is represented by 8 bits.
6983
+ * </p>
6984
+ */
6985
+ BINARY:1,
6986
+ /**
6987
+ * <p>
6988
+ * Extended Channel Interpretation (ECI) mode
6989
+ * </p>
6990
+ */
6991
+ ECI:2,
6992
+ /**
6993
+ * <p>
6994
+ * Unicode mode designs a way to represent any text data reference to UTF8 encoding/charset in Han Xin Code.
6995
+ * </p>
6996
+ */
6997
+ UNICODE:3,
6998
+ /**
6999
+ * <p>
7000
+ * URI mode indicates the data represented in Han Xin Code is Uniform Resource Identifier (URI)
7001
+ * reference to RFC 3986.
7002
+ * </p>
7003
+ */
7004
+ URI:4,
6047
7005
  /**
6048
7006
  * <p>
6049
- * <p>Extended mode which supports multi ECI modes.</p>
6050
- * <p>It is better to use DotCodeExtCodetextBuilder for extended codetext generation.</p>
6051
- * <p>Use Display2DText property to set visible text to removing managing characters.</p>
6052
- * <p>ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier</p>
6053
- * <p>All unicode characters after ECI identifier are automatically encoded into correct character codeset.</p>
7007
+ * Extended mode will allow more flexible combinations of other modes, this mode is currently not implemented.
6054
7008
  * </p>
6055
7009
  */
6056
- EXTENDED_CODETEXT: 2
7010
+ EXTENDED:5
6057
7011
  }
6058
7012
 
6059
7013
  module.exports = {
@@ -6093,6 +7047,7 @@ module.exports = {
6093
7047
  CouponParameters,
6094
7048
  FontUnit,
6095
7049
  QrStructuredAppendParameters,
7050
+ Code128Parameters,
6096
7051
  BarcodeClassifications,
6097
7052
  FontStyle,
6098
7053
  CodabarSymbol,
@@ -6117,5 +7072,10 @@ module.exports = {
6117
7072
  Pdf417MacroTerminator,
6118
7073
  MaxiCodeExtCodetextBuilder,
6119
7074
  DotCodeExtCodetextBuilder,
6120
- DotCodeEncodeMode
7075
+ DotCodeEncodeMode,
7076
+ HanXinEncodeMode,
7077
+ HanXinErrorLevel,
7078
+ HanXinVersion,
7079
+ Code128EncodeMode,
7080
+ HanXinParameters
6121
7081
  };