aspose.barcode 24.5.1 → 24.7.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
@@ -94,12 +94,10 @@ class BarcodeGenerator extends joint.BaseJavaClass
94
94
  */
95
95
  generateBarCodeImage(format)
96
96
  {
97
- try
98
- {
97
+ try {
99
98
  let base64Image = this.getJavaClass().generateBarCodeImageSync(format);
100
99
  return (base64Image);
101
- } catch (e)
102
- {
100
+ } catch (e) {
103
101
  throw new joint.BarcodeException(e)
104
102
  }
105
103
  }
@@ -128,11 +126,20 @@ class BarcodeGenerator extends joint.BaseJavaClass
128
126
  }
129
127
 
130
128
  /**
131
- * Text to be encoded.
129
+ * <p>
130
+ * Encodes codetext with byte order mark (BOM) using specified encoding.
131
+ * </p>
132
+ * @param codeText CodeText string | Bytes of codetext
133
+ * @param encoding Applied encoding
132
134
  */
133
- setCodeText(value)
135
+ setCodeText(codeText, encoding)
134
136
  {
135
- this.getJavaClass().setCodeTextSync(value);
137
+ if (Array.isArray(codeText)) {
138
+ this.getJavaClass().setCodeBytesSync(Buffer.from(codeText));
139
+ }
140
+ else {
141
+ this.getJavaClass().setCodeTextSync(codeText, encoding);
142
+ }
136
143
  }
137
144
 
138
145
  /**
@@ -143,17 +150,14 @@ class BarcodeGenerator extends joint.BaseJavaClass
143
150
  */
144
151
  exportToXml(filePath)
145
152
  {
146
- try
147
- {
153
+ try {
148
154
  let xmlData = this.getJavaClass().exportToXmlSync();
149
155
  let isSaved = xmlData != null;
150
- if (isSaved)
151
- {
156
+ if (isSaved) {
152
157
  fs.writeFileSync(filePath, xmlData);
153
158
  }
154
159
  return isSaved;
155
- } catch (ex)
156
- {
160
+ } catch (ex) {
157
161
  throw new BarcodeException(ex.getMessage());
158
162
  }
159
163
  }
@@ -167,14 +171,12 @@ class BarcodeGenerator extends joint.BaseJavaClass
167
171
  */
168
172
  importFromXml(filePath)
169
173
  {
170
- try
171
- {
174
+ try {
172
175
  let xmlData = joint.convertResourceToBase64String(filePath);
173
176
  let offset = 6;
174
177
  xmlData = xmlData.substr(offset);
175
178
  return BarcodeGenerator.construct(java(BarcodeGenerator.javaClassName).importFromXmlSync(xmlData));
176
- } catch (ex)
177
- {
179
+ } catch (ex) {
178
180
  throw new BarcodeException(ex.getMessage());
179
181
  }
180
182
  }
@@ -296,8 +298,7 @@ class BarcodeParameters extends joint.BaseJavaClass
296
298
  {
297
299
  let intColor = this.getJavaClass().getBarColorSync();
298
300
  let hexColor = ((intColor) >>> 0).toString(16).slice(-6).toUpperCase()
299
- while (hexColor.length < 6)
300
- {
301
+ while (hexColor.length < 6) {
301
302
  hexColor = "0" + hexColor;
302
303
  }
303
304
  hexColor = "#" + hexColor;
@@ -727,8 +728,7 @@ class BaseGenerationParameters extends joint.BaseJavaClass
727
728
  {
728
729
  let intColor = this.getJavaClass().getBackColorSync();
729
730
  let hexColor = ((intColor) >>> 0).toString(16).slice(-6).toUpperCase()
730
- while (hexColor.length < 6)
731
- {
731
+ while (hexColor.length < 6) {
732
732
  hexColor = "0" + hexColor;
733
733
  }
734
734
  hexColor = "#" + hexColor;
@@ -739,9 +739,13 @@ class BaseGenerationParameters extends joint.BaseJavaClass
739
739
  * Background color of the barcode image.<br>
740
740
  * Default value: #FFFFFF<br>
741
741
  */
742
- setBackColor(hexValue)
742
+ setBackColor(colorValue)
743
743
  {
744
- this.getJavaClass().setBackColorSync((parseInt(hexValue.substr(1), 16) << 8) / 256);
744
+ let hexValue = colorValue.substring(1, colorValue.length)
745
+ if (!(/^[0-9A-Fa-f]+$/.test(hexValue))) {
746
+ throw new joint.BarcodeException("Illegal color value: " + hexValue);
747
+ }
748
+ this.getJavaClass().setBackColorSync((parseInt(hexValue, 16) << 8) / 256);
745
749
  }
746
750
 
747
751
  /**
@@ -1017,8 +1021,7 @@ class BorderParameters extends joint.BaseJavaClass
1017
1021
  {
1018
1022
  let intColor = this.getJavaClass().getColorSync();
1019
1023
  let hexColor = ((intColor) >>> 0).toString(16).slice(-6).toUpperCase()
1020
- while (hexColor.length < 6)
1021
- {
1024
+ while (hexColor.length < 6) {
1022
1025
  hexColor = "0" + hexColor;
1023
1026
  }
1024
1027
  hexColor = "#" + hexColor;
@@ -1109,8 +1112,7 @@ class CaptionParameters extends joint.BaseJavaClass
1109
1112
  {
1110
1113
  let intColor = this.getJavaClass().getTextColorSync();
1111
1114
  let hexColor = ((intColor) >>> 0).toString(16).slice(-6).toUpperCase()
1112
- while (hexColor.length < 6)
1113
- {
1115
+ while (hexColor.length < 6) {
1114
1116
  hexColor = "0" + hexColor;
1115
1117
  }
1116
1118
  hexColor = "#" + hexColor;
@@ -1202,8 +1204,7 @@ class Unit extends joint.BaseJavaClass
1202
1204
 
1203
1205
  static initUnit(source)
1204
1206
  {
1205
- if (source instanceof Unit)
1206
- {
1207
+ if (source instanceof Unit) {
1207
1208
  return source.getJavaClass();
1208
1209
  }
1209
1210
  return source;
@@ -1545,8 +1546,7 @@ class CodetextParameters extends joint.BaseJavaClass
1545
1546
  {
1546
1547
  let intColor = this.getJavaClass().getColorSync();
1547
1548
  let hexColor = ((intColor) >>> 0).toString(16).slice(-6).toUpperCase()
1548
- while (hexColor.length < 6)
1549
- {
1549
+ while (hexColor.length < 6) {
1550
1550
  hexColor = "0" + hexColor;
1551
1551
  }
1552
1552
  hexColor = "#" + hexColor;
@@ -1981,6 +1981,7 @@ class DataMatrixParameters extends joint.BaseJavaClass
1981
1981
  {
1982
1982
  return this.getJavaClass().getStructuredAppendBarcodeIdSync();
1983
1983
  }
1984
+
1984
1985
  /**
1985
1986
  * <p>
1986
1987
  * Barcode ID for Structured Append mode of Datamatrix barcode.
@@ -2002,6 +2003,7 @@ class DataMatrixParameters extends joint.BaseJavaClass
2002
2003
  {
2003
2004
  return this.getJavaClass().getStructuredAppendBarcodesCountSync();
2004
2005
  }
2006
+
2005
2007
  /**
2006
2008
  * <p>
2007
2009
  * Barcodes count for Structured Append mode of Datamatrix barcode.
@@ -2023,6 +2025,7 @@ class DataMatrixParameters extends joint.BaseJavaClass
2023
2025
  {
2024
2026
  return this.getJavaClass().getStructuredAppendFileIdSync();
2025
2027
  }
2028
+
2026
2029
  /**
2027
2030
  * <p>
2028
2031
  * File ID for Structured Append mode of Datamatrix barcode.
@@ -2045,6 +2048,7 @@ class DataMatrixParameters extends joint.BaseJavaClass
2045
2048
  {
2046
2049
  return this.getJavaClass().isReaderProgrammingSync();
2047
2050
  }
2051
+
2048
2052
  /**
2049
2053
  * <p>
2050
2054
  * Used to instruct the reader to interpret the data contained within the symbol
@@ -2133,24 +2137,6 @@ class DataMatrixParameters extends joint.BaseJavaClass
2133
2137
  this.getJavaClass().setAspectRatioSync(java.newFloat(value));
2134
2138
  }
2135
2139
 
2136
- /**
2137
- * Gets the encoding of codetext.<br>
2138
- * Default value: UTF-16
2139
- */
2140
- getCodeTextEncoding()
2141
- {
2142
- return this.getJavaClass().getCodeTextEncodingSync();
2143
- }
2144
-
2145
- /**
2146
- * Sets the encoding of codetext.<br>
2147
- * Default value: UTF-16
2148
- */
2149
- setCodeTextEncoding(value)
2150
- {
2151
- this.getJavaClass().setCodeTextEncodingSync(value);
2152
- }
2153
-
2154
2140
  /**
2155
2141
  * <p>
2156
2142
  * Gets ECI encoding. Used when DataMatrixEncodeMode is Auto.
@@ -2161,6 +2147,7 @@ class DataMatrixParameters extends joint.BaseJavaClass
2161
2147
  {
2162
2148
  return this.getJavaClass().getECIEncodingSync();
2163
2149
  }
2150
+
2164
2151
  /**
2165
2152
  * <p>
2166
2153
  * Sets ECI encoding. Used when DataMatrixEncodeMode is Auto.
@@ -2346,6 +2333,7 @@ class DotCodeParameters extends joint.BaseJavaClass
2346
2333
  {
2347
2334
  return this.getJavaClass().getDotCodeEncodeModeSync();
2348
2335
  }
2336
+
2349
2337
  /**
2350
2338
  * <p>
2351
2339
  * Identifies DotCode encode mode.
@@ -2364,7 +2352,10 @@ class DotCodeParameters extends joint.BaseJavaClass
2364
2352
  * Default value is false.
2365
2353
  */
2366
2354
  isReaderInitialization()
2367
- { return this.getJavaClass().isReaderInitializationSync(); }
2355
+ {
2356
+ return this.getJavaClass().isReaderInitializationSync();
2357
+ }
2358
+
2368
2359
  /**
2369
2360
  * <p>
2370
2361
  * Indicates whether code is used for instruct reader to interpret the following data as instructions for initialization or reprogramming of the bar code reader.
@@ -2372,7 +2363,9 @@ class DotCodeParameters extends joint.BaseJavaClass
2372
2363
  * Default value is false.
2373
2364
  */
2374
2365
  setReaderInitialization(value)
2375
- { this.getJavaClass().setReaderInitializationSync(value); }
2366
+ {
2367
+ this.getJavaClass().setReaderInitializationSync(value);
2368
+ }
2376
2369
 
2377
2370
  /**
2378
2371
  * <p>
@@ -2380,7 +2373,9 @@ class DotCodeParameters extends joint.BaseJavaClass
2380
2373
  * </p>
2381
2374
  */
2382
2375
  getDotCodeStructuredAppendModeBarcodeId()
2383
- { return this.getJavaClass().getDotCodeStructuredAppendModeBarcodeIdSync(); }
2376
+ {
2377
+ return this.getJavaClass().getDotCodeStructuredAppendModeBarcodeIdSync();
2378
+ }
2384
2379
 
2385
2380
  /**
2386
2381
  * <p>
@@ -2388,7 +2383,9 @@ class DotCodeParameters extends joint.BaseJavaClass
2388
2383
  * </p>
2389
2384
  */
2390
2385
  setDotCodeStructuredAppendModeBarcodeId(value)
2391
- { this.getJavaClass().setDotCodeStructuredAppendModeBarcodeIdSync(value); }
2386
+ {
2387
+ this.getJavaClass().setDotCodeStructuredAppendModeBarcodeIdSync(value);
2388
+ }
2392
2389
 
2393
2390
  /**
2394
2391
  * <p>
@@ -2396,14 +2393,19 @@ class DotCodeParameters extends joint.BaseJavaClass
2396
2393
  * </p>
2397
2394
  */
2398
2395
  getDotCodeStructuredAppendModeBarcodesCount()
2399
- { return this.getJavaClass().getDotCodeStructuredAppendModeBarcodesCountSync(); }
2396
+ {
2397
+ return this.getJavaClass().getDotCodeStructuredAppendModeBarcodesCountSync();
2398
+ }
2399
+
2400
2400
  /**
2401
2401
  * <p>
2402
2402
  * Identifies DotCode structured append mode barcodes count. Default value is -1. Count must be a value from 1 to 35.
2403
2403
  * </p>
2404
2404
  */
2405
2405
  setDotCodeStructuredAppendModeBarcodesCount(value)
2406
- { this.getJavaClass().setDotCodeStructuredAppendModeBarcodesCountSync(value); }
2406
+ {
2407
+ this.getJavaClass().setDotCodeStructuredAppendModeBarcodesCountSync(value);
2408
+ }
2407
2409
 
2408
2410
  /**
2409
2411
  * <p>
@@ -2412,7 +2414,10 @@ class DotCodeParameters extends joint.BaseJavaClass
2412
2414
  * Default value: ISO-8859-1
2413
2415
  */
2414
2416
  getECIEncoding()
2415
- { return this.getJavaClass().getECIEncodingSync(); }
2417
+ {
2418
+ return this.getJavaClass().getECIEncodingSync();
2419
+ }
2420
+
2416
2421
  /**
2417
2422
  * <p>
2418
2423
  * Identifies ECI encoding. Used when DotCodeEncodeMode is AUTO.<br>
@@ -2431,7 +2436,10 @@ class DotCodeParameters extends joint.BaseJavaClass
2431
2436
  * Default value: -1
2432
2437
  */
2433
2438
  getRows()
2434
- { return this.getJavaClass().getRowsSync(); }
2439
+ {
2440
+ return this.getJavaClass().getRowsSync();
2441
+ }
2442
+
2435
2443
  /**
2436
2444
  * <p>
2437
2445
  * 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.
@@ -2450,7 +2458,10 @@ class DotCodeParameters extends joint.BaseJavaClass
2450
2458
  * Default value: -1
2451
2459
  */
2452
2460
  getColumns()
2453
- { return this.getJavaClass().getColumnsSync(); }
2461
+ {
2462
+ return this.getJavaClass().getColumnsSync();
2463
+ }
2464
+
2454
2465
  /**
2455
2466
  * <p>
2456
2467
  * 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.
@@ -2544,6 +2555,7 @@ class GS1CompositeBarParameters extends joint.BaseJavaClass
2544
2555
  {
2545
2556
  return this.getJavaClass().isAllowOnlyGS1EncodingSync();
2546
2557
  }
2558
+
2547
2559
  /**
2548
2560
  * <p>
2549
2561
  * If this flag is set, it allows only GS1 encoding standard for GS1CompositeBar 2D Component
@@ -2791,6 +2803,7 @@ class QrParameters extends joint.BaseJavaClass
2791
2803
  {
2792
2804
  return this.getJavaClass().getMicroQRVersionSync();
2793
2805
  }
2806
+
2794
2807
  /**
2795
2808
  * <p>
2796
2809
  * Version of MicroQR Code. From version M1 to version M4.
@@ -2812,6 +2825,7 @@ class QrParameters extends joint.BaseJavaClass
2812
2825
  {
2813
2826
  return this.getJavaClass().getRectMicroQrVersionSync();
2814
2827
  }
2828
+
2815
2829
  /**
2816
2830
  * <p>
2817
2831
  * Version of RectMicroQR Code. From version R7x59 to version R17x139.
@@ -2839,24 +2853,6 @@ class QrParameters extends joint.BaseJavaClass
2839
2853
  this.getJavaClass().setAspectRatioSync(java.newFloat(value));
2840
2854
  }
2841
2855
 
2842
- /**
2843
- * Gets the encoding of codetext.<br>
2844
- * Default value: UTF-8
2845
- */
2846
- getCodeTextEncoding()
2847
- {
2848
- return this.getJavaClass().getCodeTextEncodingSync();
2849
- }
2850
-
2851
- /**
2852
- * Sets the encoding of codetext.<br>
2853
- * Default value: UTF-8
2854
- */
2855
- setCodeTextEncoding(value)
2856
- {
2857
- this.getJavaClass().setCodeTextEncodingSync(value);
2858
- }
2859
-
2860
2856
  /**
2861
2857
  * Returns a human-readable string representation of this QrParameters.<br>
2862
2858
  * @return A string that represents this QrParameters.
@@ -2928,6 +2924,24 @@ class Pdf417Parameters extends joint.BaseJavaClass
2928
2924
  this.getJavaClass().setPdf417CompactionModeSync(value);
2929
2925
  }
2930
2926
 
2927
+ /**
2928
+ * Identifies Pdf417 encode mode.
2929
+ * Default value: Auto.
2930
+ */
2931
+ getPdf417EncodeMode()
2932
+ {
2933
+ return this.getJavaClass().getPdf417EncodeModeSync();
2934
+ }
2935
+
2936
+ /**
2937
+ * Identifies Pdf417 encode mode.
2938
+ * Default value: Auto.
2939
+ */
2940
+ setPdf417EncodeMode(pdf417EncodeMode)
2941
+ {
2942
+ this.getJavaClass().setPdf417EncodeModeSync(pdf417EncodeMode);
2943
+ }
2944
+
2931
2945
  /**
2932
2946
  * Gets Pdf417 symbology type of BarCode's error correction level<br>
2933
2947
  * ranging from level0 to level8, level0 means no error correction info,<br>
@@ -3162,24 +3176,6 @@ class Pdf417Parameters extends joint.BaseJavaClass
3162
3176
  this.getJavaClass().setPdf417MacroChecksumSync(value);
3163
3177
  }
3164
3178
 
3165
- /**
3166
- * Gets the encoding of codetext.<br>
3167
- * Default value: UTF-8
3168
- */
3169
- getCodeTextEncoding()
3170
- {
3171
- return this.getJavaClass().getCodeTextEncodingSync();
3172
- }
3173
-
3174
- /**
3175
- * Sets the encoding of codetext.<br>
3176
- * Default value: UTF-8
3177
- */
3178
- setCodeTextEncoding(value)
3179
- {
3180
- this.getJavaClass().setCodeTextEncodingSync(value);
3181
- }
3182
-
3183
3179
  /**
3184
3180
  * Extended Channel Interpretation Identifiers. It is used to tell the barcode reader details<br>
3185
3181
  * about the used references for encoding the data in the symbol.<br>
@@ -3270,7 +3266,7 @@ class Pdf417Parameters extends joint.BaseJavaClass
3270
3266
  * reader.readBarCodes().forEach(function(result, i, results)
3271
3267
  * {
3272
3268
  * console.log( result.getCodeText());
3273
- * });
3269
+ * });
3274
3270
  *
3275
3271
  * @example
3276
3272
  * # Encodes MicroPdf417 with 06 Macro the string: "[)>\u001E06\u001Dabcde1234\u001E\u0004"
@@ -3284,7 +3280,7 @@ class Pdf417Parameters extends joint.BaseJavaClass
3284
3280
  * </pre>
3285
3281
  * </pre></blockquote></hr></p>
3286
3282
  */
3287
- getMacroCharacters()
3283
+ getMacroCharacters()
3288
3284
  {
3289
3285
  return this.getJavaClass().getMacroCharactersSync();
3290
3286
  }
@@ -3320,7 +3316,7 @@ class Pdf417Parameters extends joint.BaseJavaClass
3320
3316
  * </pre>
3321
3317
  * </pre></blockquote></hr></p>
3322
3318
  */
3323
- setMacroCharacters(value)
3319
+ setMacroCharacters(value)
3324
3320
  {
3325
3321
  this.getJavaClass().setMacroCharactersSync(value);
3326
3322
  }
@@ -3426,7 +3422,7 @@ class Pdf417Parameters extends joint.BaseJavaClass
3426
3422
  * </pre>
3427
3423
  * </pre></blockquote></hr></p>
3428
3424
  */
3429
- isLinked()
3425
+ isLinked()
3430
3426
  {
3431
3427
  return this.getJavaClass().isLinkedSync();
3432
3428
  }
@@ -3533,7 +3529,7 @@ class Pdf417Parameters extends joint.BaseJavaClass
3533
3529
  * </pre>
3534
3530
  * </pre></blockquote></hr></p>
3535
3531
  */
3536
- setLinked(value)
3532
+ setLinked(value)
3537
3533
  {
3538
3534
  this.getJavaClass().setLinkedSync(value);
3539
3535
  }
@@ -3873,6 +3869,7 @@ class AztecParameters extends joint.BaseJavaClass
3873
3869
  {
3874
3870
  return this.getJavaClass().getECIEncodingSync();
3875
3871
  }
3872
+
3876
3873
  /**
3877
3874
  * <p>
3878
3875
  * Sets ECI encoding. Used when AztecEncodeMode is Auto.
@@ -3894,6 +3891,7 @@ class AztecParameters extends joint.BaseJavaClass
3894
3891
  {
3895
3892
  return this.getJavaClass().getStructuredAppendBarcodeIdSync();
3896
3893
  }
3894
+
3897
3895
  /**
3898
3896
  * <p>
3899
3897
  * Barcode ID for Structured Append mode of Aztec barcode. Barcode ID should be in range from 1 to barcodes count.
@@ -3915,6 +3913,7 @@ class AztecParameters extends joint.BaseJavaClass
3915
3913
  {
3916
3914
  return this.getJavaClass().getStructuredAppendBarcodesCountSync();
3917
3915
  }
3916
+
3918
3917
  /**
3919
3918
  * <p>
3920
3919
  * Barcodes count for Structured Append mode of Aztec barcode. Barcodes count should be in range from 1 to 26.
@@ -3936,6 +3935,7 @@ class AztecParameters extends joint.BaseJavaClass
3936
3935
  {
3937
3936
  return this.getJavaClass().getStructuredAppendFileIdSync();
3938
3937
  }
3938
+
3939
3939
  /**
3940
3940
  * <p>
3941
3941
  * File ID for Structured Append mode of Aztec barcode (optional field). File ID should not contain spaces.
@@ -3957,6 +3957,7 @@ class AztecParameters extends joint.BaseJavaClass
3957
3957
  {
3958
3958
  return this.getJavaClass().getAztecErrorLevelSync();
3959
3959
  }
3960
+
3960
3961
  /**
3961
3962
  * <p>
3962
3963
  * Level of error correction of Aztec types of barcode.
@@ -3978,6 +3979,7 @@ class AztecParameters extends joint.BaseJavaClass
3978
3979
  {
3979
3980
  return this.getJavaClass().getAztecSymbolModeSync();
3980
3981
  }
3982
+
3981
3983
  /**
3982
3984
  * <p>
3983
3985
  * Sets a Aztec Symbol mode.
@@ -4000,6 +4002,7 @@ class AztecParameters extends joint.BaseJavaClass
4000
4002
  {
4001
4003
  return this.getJavaClass().getLayersCountSync();
4002
4004
  }
4005
+
4003
4006
  /**
4004
4007
  * <p>
4005
4008
  * Sets layers count of Aztec symbol. Layers count should be in range from 1 to 3 for Compact mode and
@@ -4043,6 +4046,7 @@ class AztecParameters extends joint.BaseJavaClass
4043
4046
  {
4044
4047
  return this.getJavaClass().getAspectRatioSync();
4045
4048
  }
4049
+
4046
4050
  /**
4047
4051
  * <p>
4048
4052
  * Height/Width ratio of 2D BarCode module.
@@ -4053,30 +4057,6 @@ class AztecParameters extends joint.BaseJavaClass
4053
4057
  this.getJavaClass().setAspectRatioSync(java.newFloat(value));
4054
4058
  }
4055
4059
 
4056
- /**
4057
- * <p>
4058
- * Gets the encoding of codetext.
4059
- * Default value: UTF-8
4060
- * </p>
4061
- */
4062
- getCodeTextEncoding()
4063
- {
4064
- console.log('This function is deprecated.');
4065
- return this.getJavaClass().getCodeTextEncodingSync();
4066
- }
4067
-
4068
- /**
4069
- * <p>
4070
- * Sets the encoding of codetext.
4071
- * Default value: UTF-8
4072
- * </p>
4073
- */
4074
- setCodeTextEncoding(codeTextEncoding)
4075
- {
4076
- console.log('This function is deprecated.');
4077
- this.getJavaClass().setCodeTextEncodingSync(codeTextEncoding);
4078
- }
4079
-
4080
4060
  /**
4081
4061
  * <p>
4082
4062
  * Returns a human-readable string representation of this {@code AztecParameters}.
@@ -4248,8 +4228,7 @@ class FontUnit extends joint.BaseJavaClass
4248
4228
 
4249
4229
  static initFontUnit(source)
4250
4230
  {
4251
- if (source instanceof FontUnit)
4252
- {
4231
+ if (source instanceof FontUnit) {
4253
4232
  return source.getJavaClass();
4254
4233
  }
4255
4234
  return source;
@@ -4289,8 +4268,7 @@ class FontUnit extends joint.BaseJavaClass
4289
4268
  */
4290
4269
  setStyle(value)
4291
4270
  {
4292
- if (!("number" === typeof value))
4293
- {
4271
+ if (!("number" === typeof value)) {
4294
4272
  value = parseInt(value, 10);
4295
4273
  }
4296
4274
  this.getJavaClass().setStyleSync(value);
@@ -4559,13 +4537,10 @@ class MaxiCodeExtCodetextBuilder extends ExtCodetextBuilder
4559
4537
 
4560
4538
  constructor()
4561
4539
  {
4562
- try
4563
- {
4540
+ try {
4564
4541
  let java_class = java.import(MaxiCodeExtCodetextBuilder.JAVA_CLASS_NAME);
4565
4542
  super(new java_class());
4566
- }
4567
- catch (ex)
4568
- {
4543
+ } catch (ex) {
4569
4544
  throw new BarcodeException(ex.getMessage(), __FILE__, __LINE__);
4570
4545
  }
4571
4546
  }
@@ -4620,7 +4595,9 @@ class DotCodeExtCodetextBuilder extends ExtCodetextBuilder
4620
4595
  super(javaClass);
4621
4596
  }
4622
4597
 
4623
- init() {}
4598
+ init()
4599
+ {
4600
+ }
4624
4601
 
4625
4602
  /**
4626
4603
  * <p>
@@ -4702,6 +4679,7 @@ class Code128Parameters extends joint.BaseJavaClass
4702
4679
  {
4703
4680
  return this.getJavaClass().getCode128EncodeModeSync();
4704
4681
  }
4682
+
4705
4683
  /**
4706
4684
  * <p>
4707
4685
  * Sets a Code128 encode mode.
@@ -4774,6 +4752,7 @@ class HanXinParameters extends joint.BaseJavaClass
4774
4752
  {
4775
4753
  return this.getJavaClass().getHanXinErrorLevelSync();
4776
4754
  }
4755
+
4777
4756
  /**
4778
4757
  * <p>
4779
4758
  * Level of Reed-Solomon error correction for Han Xin barcode.
@@ -4795,6 +4774,7 @@ class HanXinParameters extends joint.BaseJavaClass
4795
4774
  {
4796
4775
  return this.getJavaClass().getHanXinEncodeModeSync();
4797
4776
  }
4777
+
4798
4778
  /**
4799
4779
  * <p>
4800
4780
  * HanXin encoding mode.
@@ -4817,6 +4797,7 @@ class HanXinParameters extends joint.BaseJavaClass
4817
4797
  {
4818
4798
  return this.getJavaClass().getHanXinECIEncodingSync();
4819
4799
  }
4800
+
4820
4801
  /**
4821
4802
  * <p>
4822
4803
  * Extended Channel Interpretation Identifiers. It is used to tell the barcode reader details
@@ -4885,6 +4866,7 @@ class DataMatrixExtCodetextBuilder extends ExtCodetextBuilder
4885
4866
  init()
4886
4867
  {
4887
4868
  }
4869
+
4888
4870
  /**
4889
4871
  * <p>
4890
4872
  * Adds codetext with Extended Channel Identifier with defined encode mode
@@ -5204,6 +5186,153 @@ class SvgParameters extends joint.BaseJavaClass
5204
5186
  {
5205
5187
  this.getJavaClass().setTextDrawnInTextElementSync(textDrawnInTextElement);
5206
5188
  }
5189
+
5190
+ /**
5191
+ * <p>
5192
+ * Possible modes for filling color in svg file, RGB is default and supported by SVG 1.1.
5193
+ * RGBA, HSL, HSLA is allowed in SVG 2.0 standard.
5194
+ * Even in RGB opacity will be set through "fill-opacity" parameter
5195
+ * </p>
5196
+ */
5197
+ setSvgColorMode(svgColorMode)
5198
+ {
5199
+ this.getJavaClass().setSvgColorModeSync(svgColorMode);
5200
+ }
5201
+
5202
+
5203
+ /**
5204
+ * Possible modes for filling color in svg file, RGB is default and supported by SVG 1.1.
5205
+ * RGBA, HSL, HSLA is allowed in SVG 2.0 standard.
5206
+ * Even in RGB opacity will be set through "fill-opacity" parameter
5207
+ */
5208
+ getSvgColorMode()
5209
+ {
5210
+ return this.getJavaClass().getSvgColorModeSync();
5211
+ }
5212
+ }
5213
+
5214
+ /**
5215
+ * <p>
5216
+ * Class for representing HSLA color (Hue, Saturation, Lightness, Alpha)
5217
+ * </p>
5218
+ */
5219
+ class HslaColor
5220
+ {
5221
+ /**
5222
+ * <p>
5223
+ * Hue [0, 360]
5224
+ * </p>
5225
+ */
5226
+ H;
5227
+
5228
+ /**
5229
+ * <p>
5230
+ * Saturation [0, 100]
5231
+ * </p>
5232
+ */
5233
+ S;
5234
+
5235
+ /**
5236
+ * <p>
5237
+ * Lightness [0, 100]
5238
+ * </p>
5239
+ */
5240
+ L;
5241
+
5242
+ /**
5243
+ * <p>
5244
+ * Alpha (opacity) [0.0f, 1.0f]
5245
+ * </p>
5246
+ */
5247
+ A = 0.0;
5248
+
5249
+
5250
+ /**
5251
+ * <p>
5252
+ * Constructor for HslaColor
5253
+ * </p>
5254
+ *
5255
+ * @param h Hue [0, 360]
5256
+ * @param s Saturation [0, 100]
5257
+ * @param l Lightness [0, 100]
5258
+ * @param a Alpha (opacity) [0.0f, 1.0f]
5259
+ */
5260
+ constructor(h, s, l, a)
5261
+ {
5262
+ HslaColor.checkHue(h);
5263
+ HslaColor.checkSatLight(s);
5264
+ HslaColor.checkSatLight(l);
5265
+ HslaColor.checkAlpha(a);
5266
+
5267
+ this.H = h;
5268
+ this.S = s;
5269
+ this.L = l;
5270
+ this.A = a;
5271
+ }
5272
+
5273
+ static checkHue(value)
5274
+ {
5275
+ if (value < 0 || value > 360) {
5276
+ throw new Exception("Wrong color value");
5277
+ }
5278
+ }
5279
+
5280
+ static checkSatLight(value)
5281
+ {
5282
+ if (value < 0 || value > 100) {
5283
+ throw new Exception("Wrong color value");
5284
+ }
5285
+ }
5286
+
5287
+ static checkAlpha(value)
5288
+ {
5289
+ if (value < 0.0 || value > 1.0) {
5290
+ throw new Exception("Wrong color value");
5291
+ }
5292
+ }
5293
+
5294
+ /**
5295
+ * <p>
5296
+ * Uses https://en.wikipedia.org/wiki/HSL_and_HSV#HSL_to_RGB
5297
+ * </p>
5298
+ *
5299
+ * @param hslaColor HSLA color to convert
5300
+ * @return string with RGBA values
5301
+ */
5302
+ static convertHslaToRgba(hslaColor) {
5303
+ let r = 0, g = 0, b = 0;
5304
+
5305
+ let hueF = hslaColor.hue / 360.0;
5306
+ let satF = hslaColor.saturation / 100.0;
5307
+ let lightF = hslaColor.lightness / 100.0;
5308
+
5309
+ if (satF === 0) {
5310
+ r = g = b = lightF;
5311
+ } else {
5312
+ let q = lightF < 0.5 ? lightF * (1 + satF) : lightF + satF - lightF * satF;
5313
+ let p = 2 * lightF - q;
5314
+
5315
+ r = HslaColor.hueToRgb(p, q, hueF + 1.0 / 3.0);
5316
+ g = HslaColor.hueToRgb(p, q, hueF);
5317
+ b = HslaColor.hueToRgb(p, q, hueF - 1.0 / 3.0);
5318
+ }
5319
+
5320
+ let rI = Math.round(r * 255);
5321
+ let gI = Math.round(g * 255);
5322
+ let bI = Math.round(b * 255);
5323
+ let aI = Math.round(hslaColor.alpha * 255);
5324
+
5325
+ return `#${aI.toString(16).padStart(2, '0')}${rI.toString(16).padStart(2, '0')}${gI.toString(16).padStart(2, '0')}${bI.toString(16).padStart(2, '0')}`.toUpperCase();
5326
+ }
5327
+
5328
+ static hueToRgb(p, q, t) {
5329
+ if (t < 0) t += 1;
5330
+ if (t > 1) t -= 1;
5331
+ if (t < 1 / 6) return p + (q - p) * 6 * t;
5332
+ if (t < 1 / 2) return q;
5333
+ if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;
5334
+ return p;
5335
+ }
5207
5336
  }
5208
5337
 
5209
5338
  /**
@@ -5296,14 +5425,45 @@ CodabarSymbol =
5296
5425
  D: 68,
5297
5426
  };
5298
5427
 
5428
+
5299
5429
  /**
5300
- * DataMatrix encoder's encoding mode, default to AUTO
5301
- * @enum
5430
+ * <p>
5431
+ * DataMatrix encoder's encoding mode, default to Auto
5432
+ * </p><p><hr><blockquote><pre>
5433
+ * This sample shows how to do codetext in Extended Mode.
5434
+ * <pre>
5435
+ * //Auto mode
5436
+ * let codetext = "犬Right狗";
5437
+ * let generator = new BarcodeGenerator(EncodeTypes.DATA_MATRIX, codetext);
5438
+ * generator.getParameters().getBarcode().getDataMatrix().setECIEncoding(ECIEncodings.UTF8);
5439
+ * generator.save("test.bmp", BarcodeImageFormat.PNG);
5440
+ * //Bytes mode
5441
+ * let encodedArr = [ 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 ];
5442
+ * let generator = new BarcodeGenerator(EncodeTypes.DATA_MATRIX, encodedArr);
5443
+ * generator.getParameters().getBarcode().getDataMatrix().setDataMatrixEncodeMode(DataMatrixEncodeMode.BINARY);
5444
+ * generator.save("test.bmp", BarcodeImageFormat.PNG);
5445
+ * //Extended codetext mode
5446
+ * //create codetext
5447
+ * let codetextBuilder=new DataMatrixExtCodetextBuilder();
5448
+ * codetextBuilder.addECICodetextWithEncodeMode(ECIEncodings.Win1251,DataMatrixEncodeMode.BYTES,"World");
5449
+ * codetextBuilder.addPlainCodetext("Will");
5450
+ * codetextBuilder.addECICodetext(ECIEncodings.UTF8,"犬Right狗");
5451
+ * codetextBuilder.addCodetextWithEncodeMode(DataMatrixEncodeMode.C40,"ABCDE");
5452
+ * //generate codetext
5453
+ * let codetext=codetextBuilder.getExtended();
5454
+ * //generate
5455
+ * let generator=new BarcodeGenerator(EncodeTypes.DATA_MATRIX,codetext);
5456
+ * generator.getParameters().getBarcode().getDataMatrix().setDataMatrixEncodeMode(DataMatrixEncodeMode.EXTENDED_CODETEXT);
5457
+ * generator.save("test.bmp", BarcodeImageFormat.PNG);
5458
+ * </pre>
5459
+ * </pre></blockquote></hr></p>
5302
5460
  */
5303
5461
  DataMatrixEncodeMode =
5304
5462
  {
5305
5463
  /**
5306
- * Automatically pick up the best encode mode for datamatrix encoding
5464
+ * In Auto mode, the CodeText is encoded with maximum data compactness.
5465
+ * Unicode characters are re-encoded in the ECIEncoding specified encoding with the insertion of an ECI identifier.
5466
+ * If a character is found that is not supported by the selected ECI encoding, an exception is thrown.
5307
5467
  */
5308
5468
  AUTO: 0,
5309
5469
 
@@ -5314,6 +5474,7 @@ DataMatrixEncodeMode =
5314
5474
 
5315
5475
  /**
5316
5476
  * Encode 8 bit values
5477
+ * @deprecated This property is obsolete and will be removed in future releases. Instead, use Base256 option.
5317
5478
  */
5318
5479
  BYTES: 6,
5319
5480
 
@@ -5323,7 +5484,7 @@ DataMatrixEncodeMode =
5323
5484
  C40: 8,
5324
5485
 
5325
5486
  /**
5326
- * UUses TEXT encoding. Encodes Lower-case alphanumeric, Upper case and special characters
5487
+ * Uses Text encoding. Encodes Lower-case alphanumeric, Upper case and special characters
5327
5488
  */
5328
5489
  TEXT: 9,
5329
5490
 
@@ -5338,21 +5499,52 @@ DataMatrixEncodeMode =
5338
5499
  ANSIX12: 11,
5339
5500
 
5340
5501
  /**
5341
- * ExtendedCodetext mode allows to manually switch encodation schemes in codetext.<br>
5342
- * Allowed encodation schemes are: EDIFACT, ANSIX12, ASCII, C40, Text, Auto.<br>
5343
- * Extended codetext example: @"\ansix12:ANSIX12TEXT\ascii:backslash must be \\ doubled\edifact:EdifactEncodedText"<br>
5344
- * All backslashes (\) must be doubled in text.<br>
5502
+ * ExtendedCodetext mode allows to manually switch encodation schemes and ECI encodings in codetext.
5503
+ * It is better to use DataMatrixExtCodetextBuilder for extended codetext generation.
5504
+ * Use Display2DText property to set visible text to removing managing characters.
5505
+ * ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier
5506
+ * All unicode characters after ECI identifier are automatically encoded into correct character codeset.
5345
5507
  *
5346
- * @example
5347
- * //This sample shows how to do codetext in Extended Mode.
5508
+ * Encodation schemes are set in the next format : "\Encodation_scheme_name:text\Encodation_scheme_name:text".
5509
+ * Allowed encodation schemes are: EDIFACT, ANSIX12, ASCII, C40, Text, Auto.
5510
+ *
5511
+ * All backslashes (\) must be doubled in text.
5512
+ *
5513
+ * @deprecated This property is obsolete and will be removed in future releases. Instead, use the 'Extended' encode mode
5514
+ */
5515
+ EXTENDED_CODETEXT: 12,
5516
+
5517
+ /**
5518
+ * ExtendedCodetext mode allows to manually switch encodation schemes and ECI encodings in codetext.
5519
+ * It is better to use DataMatrixExtCodetextBuilder for extended codetext generation.
5520
+ * Use Display2DText property to set visible text to removing managing characters.
5521
+ * ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier
5522
+ * All unicode characters after ECI identifier are automatically encoded into correct character codeset.
5348
5523
  *
5349
- * let generator = new BarcodeGenerator(EncodeTypes.DATA_MATRIX);
5350
- * generator.setCodeText("\\ansix12:ANSIX12TEXT\\ascii:backslash must be \\\\ doubled\\edifact:EdifactEncodedText");
5351
- * generator.getParameters().getBarcode().getDataMatrix().setDataMatrixEncodeMode(DataMatrixEncodeMode.EXTENDED_CODETEXT);
5352
- * generator.getParameters().getBarcode().getCodeTextParameters().setTwoDDisplayText("My Text");
5353
- * generator.save("test.png", BarcodeImageFormat.PNG);
5524
+ * Encodation schemes are set in the next format : "\Encodation_scheme_name:text\Encodation_scheme_name:text".
5525
+ * Allowed encodation schemes are: EDIFACT, ANSIX12, ASCII, C40, Text, Auto.
5526
+ *
5527
+ * All backslashes (\) must be doubled in text.
5528
+ */
5529
+ EXTENDED: 13,
5530
+
5531
+ /**
5532
+ * Encode 8 bit values
5533
+ */
5534
+ BASE_256: 14,
5535
+
5536
+ /**
5537
+ * In Binary mode, the CodeText is encoded with maximum data compactness.
5538
+ * If a Unicode character is found, an exception is thrown.
5354
5539
  */
5355
- EXTENDED_CODETEXT: 12
5540
+ BINARY: 15,
5541
+
5542
+ /**
5543
+ * In ECI mode, the entire message is re-encoded in the ECIEncoding specified encoding with the insertion of an ECI identifier.
5544
+ * If a character is found that is not supported by the selected ECI encoding, an exception is thrown.
5545
+ * Please note that some old (pre 2006) scanners may not support this mode.
5546
+ */
5547
+ ECI: 16
5356
5548
  };
5357
5549
 
5358
5550
  /**
@@ -5413,56 +5605,64 @@ ITF14BorderType =
5413
5605
  };
5414
5606
 
5415
5607
  /**
5416
- * 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.
5417
- * @example
5418
- * //Example how to use ECI encoding
5419
- * let generator = new BarcodeGenerator(EncodeTypes.QR);
5420
- * generator.setCodeText("12345TEXT");
5421
- * generator.getParameters().getBarcode().getQR().setQrEncodeMode(QREncodeMode.ECI_ENCODING);
5422
- * generator.getParameters().getBarcode().getQR().setQrEncodeType(QREncodeType.FORCE_QR);
5423
- * generator.getParameters().getBarcode().getQR().setQrECIEncoding(ECIEncodings.UTF8);
5424
- * generator.save("test.png", BarcodeImageFormat.PNG);
5425
- *
5426
- * @example
5427
- * //Example how to use FNC1 first position in Extended Mode
5428
- * QrExtCodetextBuilder textBuilder = new QrExtCodetextBuilder();
5429
- * textBuilder.addPlainCodetext("000%89%%0");
5430
- * textBuilder.addFNC1GroupSeparator();
5431
- * textBuilder.addPlainCodetext("12345&lt;FNC1&gt;");
5432
- * //generate barcode
5433
- * let generator = new BarcodeGenerator(EncodeTypes.QR);
5434
- * generator.setCodeText(textBuilder.getExtendedCodetext());
5435
- * generator.getParameters().getBarcode().getQR().setQrEncodeMode(QREncodeMode.EXTENDED_CODETEXT);
5436
- * generator.getParameters().getBarcode().getCodeTextParameters().setTwoDDisplayText("My Text");
5437
- * generator.save("d:/test.png", BarcodeImageFormat.PNG);
5438
- *
5439
- * @example
5440
- * // This sample shows how to use FNC1 second position in Extended Mode.
5608
+ * <p>
5609
+ * Encoding mode for QR barcodes.
5610
+ * </p>
5611
+ * <p><hr><blockquote><pre>
5612
+ * Example how to use ECI encoding
5613
+ * <pre>
5614
+ * generator = new BarcodeGenerator(EncodeTypes.QR, "12345TEXT");
5615
+ * generator.getParameters().getBarcode().getQR().setQrEncodeMode(QREncodeMode.ECI_ENCODING);
5616
+ * generator.getParameters().getBarcode().getQR().setQrECIEncoding(ECIEncodings.UTF8);
5617
+ * generator.save("test.png", BarcodeImageFormat.PNG);
5618
+ * </pre>
5619
+ * </pre></blockquote></hr></p>
5620
+ * <p><hr><blockquote><pre>
5621
+ * Example how to use FNC1 first position in Extended Mode
5622
+ * <pre>
5623
+ * textBuilder = new QrExtCodetextBuilder();
5624
+ * textBuilder.addPlainCodetext("000%89%%0");
5625
+ * textBuilder.addFNC1GroupSeparator();
5626
+ * textBuilder.addPlainCodetext("12345&lt;FNC1&gt;");
5627
+ * //generate barcode
5628
+ * generator = new BarcodeGenerator(EncodeTypes.QR);
5629
+ * generator.setCodeText(textBuilder.getExtended());
5630
+ * generator.getParameters().getBarcode().getQR().setQrEncodeMode(QREncodeMode.EXTENDED_CODETEXT);
5631
+ * generator.getParameters().getBarcode().getCodeTextParameters().setTwoDDisplayText("My Text");
5632
+ * generator.save("d:/test.png", BarcodeImageFormat.PNG);
5633
+ * </pre>
5634
+ *
5635
+ * This sample shows how to use FNC1 second position in Extended Mode.
5636
+ * <pre>
5637
+ *
5441
5638
  * //create codetext
5442
- * QrExtCodetextBuilder textBuilder = new QrExtCodetextBuilder();
5639
+ * textBuilder = new QrExtCodetextBuilder();
5443
5640
  * textBuilder.addFNC1SecondPosition("12");
5444
5641
  * textBuilder.addPlainCodetext("TRUE3456");
5445
5642
  * //generate barcode
5446
- * let generator = new BarcodeGenerator(EncodeTypes.QR);
5447
- * generator.setCodeText(textBuilder.getExtendedCodetext());
5643
+ * generator = new BarcodeGenerator(EncodeTypes.QR);
5644
+ * generator.setCodeText(textBuilder.getExtended());
5448
5645
  * generator.getParameters().getBarcode().getCodeTextParameters().setTwoDDisplayText("My Text");
5449
5646
  * generator.save("d:/test.png", BarcodeImageFormat.PNG);
5647
+ * </pre>
5648
+ *
5649
+ * This sample shows how to use multi ECI mode in Extended Mode.
5650
+ * <pre>
5450
5651
  *
5451
- * @example
5452
- * //This sample shows how to use multi ECI mode in Extended Mode.
5453
5652
  * //create codetext
5454
- * QrExtCodetextBuilder textBuilder = new QrExtCodetextBuilder();
5653
+ * textBuilder = new QrExtCodetextBuilder();
5455
5654
  * textBuilder.addECICodetext(ECIEncodings.Win1251, "Will");
5456
5655
  * textBuilder.addECICodetext(ECIEncodings.UTF8, "Right");
5457
5656
  * textBuilder.addECICodetext(ECIEncodings.UTF16BE, "Power");
5458
5657
  * textBuilder.addPlainCodetext("t\e\\st");
5459
5658
  * //generate barcode
5460
- * let generator = new BarcodeGenerator(EncodeTypes.QR);
5461
- * generator.setCodeText(textBuilder.getExtendedCodetext());
5659
+ * generator = new BarcodeGenerator(EncodeTypes.QR);
5660
+ * generator.setCodeText(textBuilder.getExtended());
5462
5661
  * generator.getParameters().getBarcode().getQR().setQrEncodeMode(QREncodeMode.EXTENDED_CODETEXT);
5463
5662
  * generator.getParameters().getBarcode().getCodeTextParameters().setTwoDDisplayText("My Text");
5464
5663
  * generator.save("d:/test.png", BarcodeImageFormat.PNG);
5465
- * @enum
5664
+ * </pre>
5665
+ * </pre></blockquote></hr></p>
5466
5666
  */
5467
5667
  QREncodeMode =
5468
5668
  {
@@ -6121,24 +6321,25 @@ EncodeTypes =
6121
6321
  CODE_11: 1,
6122
6322
 
6123
6323
  /**
6124
- * Specifies that the data should be encoded with Standard CODE 39 barcode specification
6125
- */
6126
- CODE_39_STANDARD: 2,
6127
-
6128
- /**
6129
- * Specifies that the data should be encoded with Extended CODE 39 barcode specification
6324
+ * <p>
6325
+ * Specifies that the data should be encoded with {@code <b>Code 39</b>} basic charset barcode specification: ISO/IEC 16388
6326
+ * </p>
6130
6327
  */
6131
- CODE_39_EXTENDED: 3,
6328
+ CODE_39: 2,
6132
6329
 
6133
6330
  /**
6134
- * Specifies that the data should be encoded with Standard CODE 93 barcode specification
6331
+ * <p>
6332
+ * Specifies that the data should be encoded with {@code <b>Code 39</b>} full ASCII charset barcode specification: ISO/IEC 16388
6333
+ * </p>
6135
6334
  */
6136
- CODE_93_STANDARD: 4,
6335
+ CODE_39_FULL_ASCII: 3,
6137
6336
 
6138
6337
  /**
6139
- * Specifies that the data should be encoded with Extended CODE 93 barcode specification
6338
+ * <p>
6339
+ * Specifies that the data should be encoded with {@code <b>CODE 93</b>} barcode specification
6340
+ * </p>
6140
6341
  */
6141
- CODE_93_EXTENDED: 5,
6342
+ CODE_93: 5,
6142
6343
 
6143
6344
  /**
6144
6345
  * Specifies that the data should be encoded with CODE 128 barcode specification
@@ -6296,7 +6497,7 @@ EncodeTypes =
6296
6497
  * Specifies that the data should be encoded with {@code <b>GS1 Aztec</b>} barcode specification. The codetext must contains parentheses for AI.
6297
6498
  * </p>
6298
6499
  */
6299
- GS_1_AZTEC:81,
6500
+ GS_1_AZTEC: 81,
6300
6501
 
6301
6502
 
6302
6503
  /**
@@ -6572,175 +6773,258 @@ EncodeTypes =
6572
6773
 
6573
6774
  parse(encodeTypeName)
6574
6775
  {
6575
- if(encodeTypeName == "CODABAR") return 0;
6576
-
6577
- else if(encodeTypeName == "CODE_11") return 1;
6578
-
6579
- else if(encodeTypeName == "CODE_39_STANDARD") return 2;
6580
-
6581
- else if(encodeTypeName == "CODE_39_EXTENDED") return 3;
6582
-
6583
- else if(encodeTypeName == "CODE_93_STANDARD") return 4;
6584
-
6585
- else if(encodeTypeName == "CODE_93_EXTENDED") return 5;
6586
-
6587
- else if(encodeTypeName == "CODE_128") return 6;
6588
-
6589
- else if(encodeTypeName == "GS_1_CODE_128") return 7;
6590
-
6591
- else if(encodeTypeName == "EAN_8") return 8;
6592
-
6593
- else if(encodeTypeName == "EAN_13") return 9;
6594
-
6595
- else if(encodeTypeName == "EAN_14") return 10;
6596
-
6597
- else if(encodeTypeName == "SCC_14") return 11;
6598
-
6599
- else if(encodeTypeName == "SSCC_18") return 12;
6600
-
6601
- else if(encodeTypeName == "UPCA") return 13;
6602
-
6603
- else if(encodeTypeName == "UPCE") return 14;
6604
-
6605
- else if(encodeTypeName == "ISBN") return 15;
6606
-
6607
- else if(encodeTypeName == "ISSN") return 16;
6608
-
6609
- else if(encodeTypeName == "ISMN") return 17;
6610
-
6611
- else if(encodeTypeName == "STANDARD_2_OF_5") return 18;
6612
-
6613
- else if(encodeTypeName == "INTERLEAVED_2_OF_5") return 19;
6614
-
6615
- else if(encodeTypeName == "MATRIX_2_OF_5") return 20;
6616
-
6617
- else if(encodeTypeName == "ITALIAN_POST_25") return 21;
6618
-
6619
- else if(encodeTypeName == "IATA_2_OF_5") return 22;
6620
-
6621
- else if(encodeTypeName == "ITF_14") return 23;
6622
-
6623
- else if(encodeTypeName == "ITF_6") return 24;
6624
-
6625
- else if(encodeTypeName == "MSI") return 25;
6626
-
6627
- else if(encodeTypeName == "VIN") return 26;
6628
-
6629
- else if(encodeTypeName == "DEUTSCHE_POST_IDENTCODE") return 27;
6630
-
6631
- else if(encodeTypeName == "DEUTSCHE_POST_LEITCODE") return 28;
6632
-
6633
- else if(encodeTypeName == "OPC") return 29;
6634
-
6635
- else if(encodeTypeName == "PZN") return 30;
6636
-
6637
- else if(encodeTypeName == "CODE_16_K") return 31;
6638
-
6639
- else if(encodeTypeName == "PHARMACODE") return 32;
6640
-
6641
- else if(encodeTypeName == "DATA_MATRIX") return 33;
6642
-
6643
- else if(encodeTypeName == "QR") return 34;
6644
-
6645
- else if(encodeTypeName == "AZTEC") return 35;
6646
-
6647
- else if(encodeTypeName == "GS_1_AZTEC") return 81;
6648
-
6649
- else if(encodeTypeName == "PDF_417") return 36;
6650
-
6651
- else if(encodeTypeName == "MACRO_PDF_417") return 37;
6652
-
6653
- else if(encodeTypeName == "GS_1_DATA_MATRIX") return 48;
6654
-
6655
- else if(encodeTypeName == "MICRO_PDF_417") return 55;
6656
-
6657
- else if(encodeTypeName == "GS_1_QR") return 56;
6658
-
6659
- else if(encodeTypeName == "MAXI_CODE") return 57;
6660
-
6661
- else if(encodeTypeName == "DOT_CODE") return 60;
6662
-
6663
- else if(encodeTypeName == "AUSTRALIA_POST") return 38;
6664
-
6665
- else if(encodeTypeName == "POSTNET") return 39;
6666
-
6667
- else if(encodeTypeName == "PLANET") return 40;
6668
-
6669
- else if(encodeTypeName == "ONE_CODE") return 41;
6670
-
6671
- else if(encodeTypeName == "RM_4_SCC") return 42;
6672
-
6673
- else if(encodeTypeName == "MAILMARK") return 66;
6674
-
6675
- else if(encodeTypeName == "DATABAR_OMNI_DIRECTIONAL") return 43;
6676
-
6677
- else if(encodeTypeName == "DATABAR_TRUNCATED") return 44;
6678
-
6679
- else if(encodeTypeName == "DATABAR_LIMITED") return 45;
6680
-
6681
- else if(encodeTypeName == "DATABAR_EXPANDED") return 46;
6682
-
6683
- else if(encodeTypeName == "DATABAR_EXPANDED_STACKED") return 52;
6684
-
6685
- else if(encodeTypeName == "DATABAR_STACKED") return 53;
6686
-
6687
- else if(encodeTypeName == "DATABAR_STACKED_OMNI_DIRECTIONAL") return 54;
6688
-
6689
- else if(encodeTypeName == "SINGAPORE_POST") return 47;
6690
-
6691
- else if(encodeTypeName == "AUSTRALIAN_POSTE_PARCEL") return 49;
6692
-
6693
- else if(encodeTypeName == "SWISS_POST_PARCEL") return 50;
6694
-
6695
- else if(encodeTypeName == "PATCH_CODE") return 51;
6696
-
6697
- else if(encodeTypeName == "CODE_32") return 58;
6698
-
6699
- else if(encodeTypeName == "DATA_LOGIC_2_OF_5") return 59;
6700
-
6701
- else if(encodeTypeName == "DUTCH_KIX") return 61;
6702
-
6703
- else if(encodeTypeName == "UPCA_GS_1_CODE_128_COUPON") return 62;
6704
-
6705
- else if(encodeTypeName == "UPCA_GS_1_DATABAR_COUPON") return 63;
6706
-
6707
- else if(encodeTypeName == "CODABLOCK_F") return 64;
6708
-
6709
- else if(encodeTypeName == "GS_1_CODABLOCK_F") return 65;
6710
-
6711
- else if(encodeTypeName == "GS_1_COMPOSITE_BAR") return 67;
6712
-
6713
- else if(encodeTypeName == "HIBC_CODE_39_LIC") return 68;
6714
-
6715
- else if(encodeTypeName == "HIBC_CODE_128_LIC") return 69;
6716
-
6717
- else if(encodeTypeName == "HIBC_AZTEC_LIC") return 70;
6718
-
6719
- else if(encodeTypeName == "HIBC_DATA_MATRIX_LIC") return 71;
6720
-
6721
- else if(encodeTypeName == "HIBCQRLIC") return 72;
6722
-
6723
- else if(encodeTypeName == "HIBC_CODE_39_PAS") return 73;
6724
-
6725
- else if(encodeTypeName == "HIBC_CODE_128_PAS") return 74;
6726
-
6727
- else if(encodeTypeName == "HIBC_AZTEC_PAS") return 75;
6728
-
6729
- else if(encodeTypeName == "HIBC_DATA_MATRIX_PAS") return 76;
6730
-
6731
- else if(encodeTypeName == "HIBCQRPAS") return 77;
6732
-
6733
- else if(encodeTypeName == "GS_1_DOT_CODE") return 78;
6734
-
6735
- else if(encodeTypeName == "HAN_XIN") return 79;
6736
-
6737
- else if(encodeTypeName == "GS_1_HAN_XIN") return 80;
6738
-
6739
- else if(encodeTypeName == "MICRO_QR") return 83;
6740
-
6741
- else if(encodeTypeName == "RECT_MICRO_QR") return 84;
6742
-
6743
- else return -1;
6776
+ if (encodeTypeName == "CODABAR") {
6777
+ return 0;
6778
+ }
6779
+ else if (encodeTypeName == "CODE_11") {
6780
+ return 1;
6781
+ }
6782
+ else if (encodeTypeName == "CODE_39") {
6783
+ return 2;
6784
+ }
6785
+ else if (encodeTypeName == "CODE_39_FULL_ASCII") {
6786
+ return 3;
6787
+ }
6788
+ else if (encodeTypeName == "CODE_93") {
6789
+ return 5;
6790
+ }
6791
+ else if (encodeTypeName == "CODE_128") {
6792
+ return 6;
6793
+ }
6794
+ else if (encodeTypeName == "GS_1_CODE_128") {
6795
+ return 7;
6796
+ }
6797
+ else if (encodeTypeName == "EAN_8") {
6798
+ return 8;
6799
+ }
6800
+ else if (encodeTypeName == "EAN_13") {
6801
+ return 9;
6802
+ }
6803
+ else if (encodeTypeName == "EAN_14") {
6804
+ return 10;
6805
+ }
6806
+ else if (encodeTypeName == "SCC_14") {
6807
+ return 11;
6808
+ }
6809
+ else if (encodeTypeName == "SSCC_18") {
6810
+ return 12;
6811
+ }
6812
+ else if (encodeTypeName == "UPCA") {
6813
+ return 13;
6814
+ }
6815
+ else if (encodeTypeName == "UPCE") {
6816
+ return 14;
6817
+ }
6818
+ else if (encodeTypeName == "ISBN") {
6819
+ return 15;
6820
+ }
6821
+ else if (encodeTypeName == "ISSN") {
6822
+ return 16;
6823
+ }
6824
+ else if (encodeTypeName == "ISMN") {
6825
+ return 17;
6826
+ }
6827
+ else if (encodeTypeName == "STANDARD_2_OF_5") {
6828
+ return 18;
6829
+ }
6830
+ else if (encodeTypeName == "INTERLEAVED_2_OF_5") {
6831
+ return 19;
6832
+ }
6833
+ else if (encodeTypeName == "MATRIX_2_OF_5") {
6834
+ return 20;
6835
+ }
6836
+ else if (encodeTypeName == "ITALIAN_POST_25") {
6837
+ return 21;
6838
+ }
6839
+ else if (encodeTypeName == "IATA_2_OF_5") {
6840
+ return 22;
6841
+ }
6842
+ else if (encodeTypeName == "ITF_14") {
6843
+ return 23;
6844
+ }
6845
+ else if (encodeTypeName == "ITF_6") {
6846
+ return 24;
6847
+ }
6848
+ else if (encodeTypeName == "MSI") {
6849
+ return 25;
6850
+ }
6851
+ else if (encodeTypeName == "VIN") {
6852
+ return 26;
6853
+ }
6854
+ else if (encodeTypeName == "DEUTSCHE_POST_IDENTCODE") {
6855
+ return 27;
6856
+ }
6857
+ else if (encodeTypeName == "DEUTSCHE_POST_LEITCODE") {
6858
+ return 28;
6859
+ }
6860
+ else if (encodeTypeName == "OPC") {
6861
+ return 29;
6862
+ }
6863
+ else if (encodeTypeName == "PZN") {
6864
+ return 30;
6865
+ }
6866
+ else if (encodeTypeName == "CODE_16_K") {
6867
+ return 31;
6868
+ }
6869
+ else if (encodeTypeName == "PHARMACODE") {
6870
+ return 32;
6871
+ }
6872
+ else if (encodeTypeName == "DATA_MATRIX") {
6873
+ return 33;
6874
+ }
6875
+ else if (encodeTypeName == "QR") {
6876
+ return 34;
6877
+ }
6878
+ else if (encodeTypeName == "AZTEC") {
6879
+ return 35;
6880
+ }
6881
+ else if (encodeTypeName == "GS_1_AZTEC") {
6882
+ return 81;
6883
+ }
6884
+ else if (encodeTypeName == "PDF_417") {
6885
+ return 36;
6886
+ }
6887
+ else if (encodeTypeName == "MACRO_PDF_417") {
6888
+ return 37;
6889
+ }
6890
+ else if (encodeTypeName == "GS_1_DATA_MATRIX") {
6891
+ return 48;
6892
+ }
6893
+ else if (encodeTypeName == "MICRO_PDF_417") {
6894
+ return 55;
6895
+ }
6896
+ else if (encodeTypeName == "GS_1_QR") {
6897
+ return 56;
6898
+ }
6899
+ else if (encodeTypeName == "MAXI_CODE") {
6900
+ return 57;
6901
+ }
6902
+ else if (encodeTypeName == "DOT_CODE") {
6903
+ return 60;
6904
+ }
6905
+ else if (encodeTypeName == "AUSTRALIA_POST") {
6906
+ return 38;
6907
+ }
6908
+ else if (encodeTypeName == "POSTNET") {
6909
+ return 39;
6910
+ }
6911
+ else if (encodeTypeName == "PLANET") {
6912
+ return 40;
6913
+ }
6914
+ else if (encodeTypeName == "ONE_CODE") {
6915
+ return 41;
6916
+ }
6917
+ else if (encodeTypeName == "RM_4_SCC") {
6918
+ return 42;
6919
+ }
6920
+ else if (encodeTypeName == "MAILMARK") {
6921
+ return 66;
6922
+ }
6923
+ else if (encodeTypeName == "DATABAR_OMNI_DIRECTIONAL") {
6924
+ return 43;
6925
+ }
6926
+ else if (encodeTypeName == "DATABAR_TRUNCATED") {
6927
+ return 44;
6928
+ }
6929
+ else if (encodeTypeName == "DATABAR_LIMITED") {
6930
+ return 45;
6931
+ }
6932
+ else if (encodeTypeName == "DATABAR_EXPANDED") {
6933
+ return 46;
6934
+ }
6935
+ else if (encodeTypeName == "DATABAR_EXPANDED_STACKED") {
6936
+ return 52;
6937
+ }
6938
+ else if (encodeTypeName == "DATABAR_STACKED") {
6939
+ return 53;
6940
+ }
6941
+ else if (encodeTypeName == "DATABAR_STACKED_OMNI_DIRECTIONAL") {
6942
+ return 54;
6943
+ }
6944
+ else if (encodeTypeName == "SINGAPORE_POST") {
6945
+ return 47;
6946
+ }
6947
+ else if (encodeTypeName == "AUSTRALIAN_POSTE_PARCEL") {
6948
+ return 49;
6949
+ }
6950
+ else if (encodeTypeName == "SWISS_POST_PARCEL") {
6951
+ return 50;
6952
+ }
6953
+ else if (encodeTypeName == "PATCH_CODE") {
6954
+ return 51;
6955
+ }
6956
+ else if (encodeTypeName == "CODE_32") {
6957
+ return 58;
6958
+ }
6959
+ else if (encodeTypeName == "DATA_LOGIC_2_OF_5") {
6960
+ return 59;
6961
+ }
6962
+ else if (encodeTypeName == "DUTCH_KIX") {
6963
+ return 61;
6964
+ }
6965
+ else if (encodeTypeName == "UPCA_GS_1_CODE_128_COUPON") {
6966
+ return 62;
6967
+ }
6968
+ else if (encodeTypeName == "UPCA_GS_1_DATABAR_COUPON") {
6969
+ return 63;
6970
+ }
6971
+ else if (encodeTypeName == "CODABLOCK_F") {
6972
+ return 64;
6973
+ }
6974
+ else if (encodeTypeName == "GS_1_CODABLOCK_F") {
6975
+ return 65;
6976
+ }
6977
+ else if (encodeTypeName == "GS_1_COMPOSITE_BAR") {
6978
+ return 67;
6979
+ }
6980
+ else if (encodeTypeName == "HIBC_CODE_39_LIC") {
6981
+ return 68;
6982
+ }
6983
+ else if (encodeTypeName == "HIBC_CODE_128_LIC") {
6984
+ return 69;
6985
+ }
6986
+ else if (encodeTypeName == "HIBC_AZTEC_LIC") {
6987
+ return 70;
6988
+ }
6989
+ else if (encodeTypeName == "HIBC_DATA_MATRIX_LIC") {
6990
+ return 71;
6991
+ }
6992
+ else if (encodeTypeName == "HIBCQRLIC") {
6993
+ return 72;
6994
+ }
6995
+ else if (encodeTypeName == "HIBC_CODE_39_PAS") {
6996
+ return 73;
6997
+ }
6998
+ else if (encodeTypeName == "HIBC_CODE_128_PAS") {
6999
+ return 74;
7000
+ }
7001
+ else if (encodeTypeName == "HIBC_AZTEC_PAS") {
7002
+ return 75;
7003
+ }
7004
+ else if (encodeTypeName == "HIBC_DATA_MATRIX_PAS") {
7005
+ return 76;
7006
+ }
7007
+ else if (encodeTypeName == "HIBCQRPAS") {
7008
+ return 77;
7009
+ }
7010
+ else if (encodeTypeName == "GS_1_DOT_CODE") {
7011
+ return 78;
7012
+ }
7013
+ else if (encodeTypeName == "HAN_XIN") {
7014
+ return 79;
7015
+ }
7016
+ else if (encodeTypeName == "GS_1_HAN_XIN") {
7017
+ return 80;
7018
+ }
7019
+ else if (encodeTypeName == "MICRO_QR") {
7020
+ return 83;
7021
+ }
7022
+ else if (encodeTypeName == "RECT_MICRO_QR") {
7023
+ return 84;
7024
+ }
7025
+ else {
7026
+ return -1;
7027
+ }
6744
7028
  }
6745
7029
  }
6746
7030
 
@@ -7019,11 +7303,39 @@ ECIEncodings =
7019
7303
  /**
7020
7304
  * GB (PRC) Chinese Character Set encoding. ECI Id:"\000029"
7021
7305
  */
7022
- GB18030: 29,
7306
+ GB2312: 29,
7023
7307
  /**
7024
7308
  * Korean Character Set encoding. ECI Id:"\000030"
7025
7309
  */
7026
7310
  EUC_KR: 30,
7311
+ /**
7312
+ * <p>GBK (extension of GB2312 for Simplified Chinese) encoding. ECI Id:"\000031"</p>
7313
+ */
7314
+ GBK: 31,
7315
+ /**
7316
+ * <p>GGB18030 Chinese Character Set encoding. ECI Id:"\000032"</p>
7317
+ */
7318
+ GB18030: 32,
7319
+ /**
7320
+ * <p> ISO/IEC 10646 UTF-16LE encoding. ECI Id:"\000033"</p>
7321
+ */
7322
+ UTF16LE: 33,
7323
+ /**
7324
+ * <p> ISO/IEC 10646 UTF-32BE encoding. ECI Id:"\000034"</p>
7325
+ */
7326
+ UTF32BE: 34,
7327
+ /**
7328
+ * <p> ISO/IEC 10646 UTF-32LE encoding. ECI Id:"\000035"</p>
7329
+ */
7330
+ UTF32LE: 35,
7331
+ /**
7332
+ * <p> ISO/IEC 646: ISO 7-bit coded character set - Invariant Characters set encoding. ECI Id:"\000170"</p>
7333
+ */
7334
+ INVARIANT: 170,
7335
+ /**
7336
+ * <p> 8-bit binary data. ECI Id:"\000899"</p>
7337
+ */
7338
+ BINARY: 899,
7027
7339
  /**
7028
7340
  * No Extended Channel Interpretation
7029
7341
  */
@@ -7227,25 +7539,51 @@ Pdf417MacroTerminator =
7227
7539
  */
7228
7540
  MaxiCodeEncodeMode =
7229
7541
  {
7230
-
7231
7542
  /**
7232
- * Encode codetext with value set in the ECIEncoding property.
7543
+ * In Auto mode, the CodeText is encoded with maximum data compactness.
7544
+ * Unicode characters are re-encoded in the ECIEncoding specified encoding with the insertion of an ECI identifier.
7545
+ * If a character is found that is not supported by the selected ECI encoding, an exception is thrown.
7233
7546
  */
7234
7547
  AUTO: 0,
7235
7548
 
7236
7549
  /**
7237
7550
  * Encode codetext as plain bytes. If it detects any Unicode character, the character will be encoded as two bytes, lower byte first.
7551
+ * @deprecated
7238
7552
  */
7239
7553
  BYTES: 1,
7240
7554
 
7241
7555
  /**
7242
- * Extended mode which supports multi ECI modes.<br>
7243
- * It is better to use MaxiCodeExtCodetextBuilder for extended codetext generation.<br>
7244
- * Use Display2DText property to set visible text to removing managing characters.<br>
7245
- * ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier<br>
7556
+ * Extended mode which supports multi ECI modes.
7557
+ * It is better to use MaxiCodeExtCodetextBuilder for extended codetext generation.
7558
+ * Use Display2DText property to set visible text to removing managing characters.
7559
+ * ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier
7560
+ * All unicode characters after ECI identifier are automatically encoded into correct character codeset.
7561
+ *
7562
+ * @deprecated
7563
+ */
7564
+ EXTENDED_CODETEXT: 2,
7565
+
7566
+ /**
7567
+ * Extended mode which supports multi ECI modes.
7568
+ * It is better to use MaxiCodeExtCodetextBuilder for extended codetext generation.
7569
+ * Use Display2DText property to set visible text to removing managing characters.
7570
+ * ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier
7246
7571
  * All unicode characters after ECI identifier are automatically encoded into correct character codeset.
7247
7572
  */
7248
- EXTENDED_CODETEXT: 2
7573
+ EXTENDED: 3,
7574
+
7575
+ /**
7576
+ * In Binary mode, the CodeText is encoded with maximum data compactness.
7577
+ * If a Unicode character is found, an exception is thrown.
7578
+ */
7579
+ BINARY: 4,
7580
+
7581
+ /**
7582
+ * In ECI mode, the entire message is re-encoded in the ECIEncoding specified encoding with the insertion of an ECI identifier.
7583
+ * If a character is found that is not supported by the selected ECI encoding, an exception is thrown.
7584
+ * Please note that some old (pre 2006) scanners may not support this mode.
7585
+ */
7586
+ ECI: 5
7249
7587
  }
7250
7588
 
7251
7589
  /**
@@ -7415,29 +7753,87 @@ MaxiCodeMode =
7415
7753
  DotCodeEncodeMode =
7416
7754
  {
7417
7755
  /**
7418
- * <p>
7419
- * Encode codetext with value set in the ECIEncoding property.
7756
+ * In Auto mode, the CodeText is encoded with maximum data compactness.
7757
+ * Unicode characters are re-encoded in the ECIEncoding specified encoding with the insertion of an ECI identifier.
7758
+ * If a character is found that is not supported by the selected ECI encoding, an exception is thrown.
7420
7759
  * </p>
7421
7760
  */
7422
7761
  AUTO: 0,
7423
7762
 
7424
7763
  /**
7425
- * <p>
7426
7764
  * Encode codetext as plain bytes. If it detects any Unicode character, the character will be encoded as two bytes, lower byte first.
7427
- * </p>
7765
+ * @deprecated
7428
7766
  */
7429
7767
  BYTES: 1,
7430
7768
 
7431
7769
  /**
7432
- * <p>Extended mode which supports multi ECI modes.</p>
7433
- * <p>It is better to use DotCodeExtCodetextBuilder for extended codetext generation.</p>
7434
- * <p>Use Display2DText property to set visible text to removing managing characters.</p>
7435
- * <p>ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier</p>
7436
- * <p>All unicode characters after ECI identifier are automatically encoded into correct character codeset.</p>
7770
+ * Extended mode which supports multi ECI modes.
7771
+ * It is better to use DotCodeExtCodetextBuilder for extended codetext generation.
7772
+ * Use Display2DText property to set visible text to removing managing characters.
7773
+ * ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier
7774
+ * All unicode characters after ECI identifier are automatically encoded into correct character codeset.
7775
+ * @deprecated
7776
+ */
7777
+ EXTENDED_CODETEXT: 2,
7778
+
7779
+ /**
7780
+ * In Binary mode, the CodeText is encoded with maximum data compactness.
7781
+ * If a Unicode character is found, an exception is thrown.
7782
+ */
7783
+ BINARY: 3,
7784
+
7785
+ /**
7786
+ * In ECI mode, the entire message is re-encoded in the ECIEncoding specified encoding with the insertion of an ECI identifier.
7787
+ * If a character is found that is not supported by the selected ECI encoding, an exception is thrown.
7788
+ * Please note that some old (pre 2006) scanners may not support this mode.
7789
+ */
7790
+ ECI: 4,
7791
+
7792
+ /**
7793
+ * Extended mode which supports multi ECI modes.
7794
+ * It is better to use DotCodeExtCodetextBuilder for extended codetext generation.
7795
+ * Use Display2DText property to set visible text to removing managing characters.
7796
+ * ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier
7797
+ * All unicode characters after ECI identifier are automatically encoded into correct character codeset.
7437
7798
  */
7438
- EXTENDED_CODETEXT: 2
7799
+ EXTENDED: 5
7439
7800
  }
7440
7801
 
7802
+ /**
7803
+ * Pdf417 barcode encode mode
7804
+ */
7805
+ Pdf417EncodeMode =
7806
+ {
7807
+ /**
7808
+ *
7809
+ * In Auto mode, the CodeText is encoded with maximum data compactness.
7810
+ * Unicode characters are re-encoded in the ECIEncoding specified encoding with the insertion of an ECI identifier.
7811
+ * If a character is found that is not supported by the selected ECI encoding, an exception is thrown.
7812
+ */
7813
+ AUTO: 0,
7814
+
7815
+ /**
7816
+ * In Binary mode, the CodeText is encoded with maximum data compactness.
7817
+ * If a Unicode character is found, an exception is thrown.
7818
+ */
7819
+ BINARY: 1,
7820
+
7821
+ /**
7822
+ * In ECI mode, the entire message is re-encoded in the ECIEncoding specified encoding with the insertion of an ECI identifier.
7823
+ * If a character is found that is not supported by the selected ECI encoding, an exception is thrown.
7824
+ * Please note that some old (pre 2006) scanners may not support this mode.
7825
+ */
7826
+ ECI: 2,
7827
+
7828
+ /**
7829
+ * Extended mode which supports multi ECI modes.
7830
+ * It is better to use Pdf417ExtCodetextBuilder for extended codetext generation.
7831
+ * Use Display2DText property to set visible text to removing managing characters.
7832
+ * ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier
7833
+ * All unicode characters after ECI identifier are automatically encoded into correct character codeset.
7834
+ */
7835
+ EXTENDED: 3
7836
+ }
7441
7837
 
7442
7838
  /**
7443
7839
  * <p>
@@ -7461,7 +7857,7 @@ DotCodeEncodeMode =
7461
7857
  * </pre></blockquote></hr></p>
7462
7858
  */
7463
7859
  Code128EncodeMode =
7464
- {
7860
+ {
7465
7861
  /**
7466
7862
  * <p>
7467
7863
  * Encode codetext in classic ISO 15417 mode. The mode should be used in all ordinary cases.
@@ -7519,1077 +7915,1077 @@ Code128EncodeMode =
7519
7915
  * </p>
7520
7916
  */
7521
7917
  HanXinVersion =
7522
- {
7523
- /**
7524
- * <p>
7525
- * Specifies to automatically pick up the best version.
7526
- * This is default value.
7527
- * </p>
7528
- */
7529
- AUTO:0,
7530
- /**
7531
- * <p>
7532
- * Specifies version 1 with 23 x 23 modules.
7533
- * </p>
7534
- */
7535
- VERSION_01:1,
7536
- /**
7537
- * <p>
7538
- * Specifies version 2 with 25 x 25 modules.
7539
- * </p>
7540
- */
7541
- VERSION_02:2,
7542
- /**
7543
- * <p>
7544
- * Specifies version 3 with 27 x 27 modules.
7545
- * </p>
7546
- */
7547
- VERSION_03:3,
7548
- /**
7549
- * <p>
7550
- * Specifies version 4 with 29 x 29 modules.
7551
- * </p>
7552
- */
7553
- VERSION_04:4,
7554
- /**
7555
- * <p>
7556
- * Specifies version 5 with 31 x 31 modules.
7557
- * </p>
7558
- */
7559
- VERSION_05:5,
7560
- /**
7561
- * <p>
7562
- * Specifies version 6 with 33 x 33 modules.
7563
- * </p>
7564
- */
7565
- VERSION_06:6,
7566
- /**
7567
- * <p>
7568
- * Specifies version 7 with 35 x 35 modules.
7569
- * </p>
7570
- */
7571
- VERSION_07:7,
7572
- /**
7573
- * <p>
7574
- * Specifies version 8 with 37 x 37 modules.
7575
- * </p>
7576
- */
7577
- VERSION_08:8,
7578
- /**
7579
- * <p>
7580
- * Specifies version 9 with 39 x 39 modules.
7581
- * </p>
7582
- */
7583
- VERSION_09:9,
7584
- /**
7585
- * <p>
7586
- * Specifies version 10 with 41 x 41 modules.
7587
- * </p>
7588
- */
7589
- VERSION_10:10,
7590
- /**
7591
- * <p>
7592
- * Specifies version 11 with 43 x 43 modules.
7593
- * </p>
7594
- */
7595
- VERSION_11:11,
7596
- /**
7597
- * <p>
7598
- * Specifies version 12 with 45 x 45 modules.
7599
- * </p>
7600
- */
7601
- VERSION_12:12,
7602
- /**
7603
- * <p>
7604
- * Specifies version 13 with 47 x 47 modules.
7605
- * </p>
7606
- */
7607
- VERSION_13:13,
7608
- /**
7609
- * <p>
7610
- * Specifies version 14 with 49 x 49 modules.
7611
- * </p>
7612
- */
7613
- VERSION_14:14,
7614
- /**
7615
- * <p>
7616
- * Specifies version 15 with 51 x 51 modules.
7617
- * </p>
7618
- */
7619
- VERSION_15:15,
7620
- /**
7621
- * <p>
7622
- * Specifies version 16 with 53 x 53 modules.
7623
- * </p>
7624
- */
7625
- VERSION_16:16,
7626
- /**
7627
- * <p>
7628
- * Specifies version 17 with 55 x 55 modules.
7629
- * </p>
7630
- */
7631
- VERSION_17:17,
7632
- /**
7633
- * <p>
7634
- * Specifies version 18 with 57 x 57 modules.
7635
- * </p>
7636
- */
7637
- VERSION_18:18,
7638
- /**
7639
- * <p>
7640
- * Specifies version 19 with 59 x 59 modules.
7641
- * </p>
7642
- */
7643
- VERSION_19:19,
7644
- /**
7645
- * <p>
7646
- * Specifies version 20 with 61 x 61 modules.
7647
- * </p>
7648
- */
7649
- VERSION_20:20,
7650
- /**
7651
- * <p>
7652
- * Specifies version 21 with 63 x 63 modules.
7653
- * </p>
7654
- */
7655
- VERSION_21:21,
7656
- /**
7657
- * <p>
7658
- * Specifies version 22 with 65 x 65 modules.
7659
- * </p>
7660
- */
7661
- VERSION_22:22,
7662
- /**
7663
- * <p>
7664
- * Specifies version 23 with 67 x 67 modules.
7665
- * </p>
7666
- */
7667
- VERSION_23:23,
7668
- /**
7669
- * <p>
7670
- * Specifies version 24 with 69 x 69 modules.
7671
- * </p>
7672
- */
7673
- VERSION_24:24,
7674
- /**
7675
- * <p>
7676
- * Specifies version 25 with 71 x 71 modules.
7677
- * </p>
7678
- */
7679
- VERSION_25:25,
7680
- /**
7681
- * <p>
7682
- * Specifies version 26 with 73 x 73 modules.
7683
- * </p>
7684
- */
7685
- VERSION_26:26,
7686
- /**
7687
- * <p>
7688
- * Specifies version 27 with 75 x 75 modules.
7689
- * </p>
7690
- */
7691
- VERSION_27:27,
7692
- /**
7693
- * <p>
7694
- * Specifies version 28 with 77 x 77 modules.
7695
- * </p>
7696
- */
7697
- VERSION_28:28,
7698
- /**
7699
- * <p>
7700
- * Specifies version 29 with 79 x 79 modules.
7701
- * </p>
7702
- */
7703
- VERSION_29:29,
7704
- /**
7705
- * <p>
7706
- * Specifies version 30 with 81 x 81 modules.
7707
- * </p>
7708
- */
7709
- VERSION_30:30,
7710
- /**
7711
- * <p>
7712
- * Specifies version 31 with 83 x 83 modules.
7713
- * </p>
7714
- */
7715
- VERSION_31:31,
7716
- /**
7717
- * <p>
7718
- * Specifies version 32 with 85 x 85 modules.
7719
- * </p>
7720
- */
7721
- VERSION_32:32,
7722
- /**
7723
- * <p>
7724
- * Specifies version 33 with 87 x 87 modules.
7725
- * </p>
7726
- */
7727
- VERSION_33:33,
7728
- /**
7729
- * <p>
7730
- * Specifies version 34 with 89 x 89 modules.
7731
- * </p>
7732
- */
7733
- VERSION_34:34,
7734
- /**
7735
- * <p>
7736
- * Specifies version 35 with 91 x 91 modules.
7737
- * </p>
7738
- */
7739
- VERSION_35:35,
7740
- /**
7741
- * <p>
7742
- * Specifies version 36 with 93 x 93 modules.
7743
- * </p>
7744
- */
7745
- VERSION_36:36,
7746
- /**
7747
- * <p>
7748
- * Specifies version 37 with 95 x 95 modules.
7749
- * </p>
7750
- */
7751
- VERSION_37:37,
7752
- /**
7753
- * <p>
7754
- * Specifies version 38 with 97 x 97 modules.
7755
- * </p>
7756
- */
7757
- VERSION_38:38,
7758
- /**
7759
- * <p>
7760
- * Specifies version 39 with 99 x 99 modules.
7761
- * </p>
7762
- */
7763
- VERSION_39:39,
7764
- /**
7765
- * <p>
7766
- * Specifies version 40 with 101 x 101 modules.
7767
- * </p>
7768
- */
7769
- VERSION_40:40,
7770
- /**
7771
- * <p>
7772
- * Specifies version 41 with 103 x 103 modules.
7773
- * </p>
7774
- */
7775
- VERSION_41:41,
7776
- /**
7777
- * <p>
7778
- * Specifies version 42 with 105 x 105 modules.
7779
- * </p>
7780
- */
7781
- VERSION_42:42,
7782
- /**
7783
- * <p>
7784
- * Specifies version 43 with 107 x 107 modules.
7785
- * </p>
7786
- */
7787
- VERSION_43:43,
7788
- /**
7789
- * <p>
7790
- * Specifies version 44 with 109 x 109 modules.
7791
- * </p>
7792
- */
7793
- VERSION_44:44,
7794
- /**
7795
- * <p>
7796
- * Specifies version 45 with 111 x 111 modules.
7797
- * </p>
7798
- */
7799
- VERSION_45:45,
7800
- /**
7801
- * <p>
7802
- * Specifies version 46 with 113 x 113 modules.
7803
- * </p>
7804
- */
7805
- VERSION_46:46,
7806
- /**
7807
- * <p>
7808
- * Specifies version 47 with 115 x 115 modules.
7809
- * </p>
7810
- */
7811
- VERSION_47:47,
7812
- /**
7813
- * <p>
7814
- * Specifies version 48 with 117 x 117 modules.
7815
- * </p>
7816
- */
7817
- VERSION_48:48,
7818
- /**
7819
- * <p>
7820
- * Specifies version 49 with 119 x 119 modules.
7821
- * </p>
7822
- */
7823
- VERSION_49:49,
7824
- /**
7825
- * <p>
7826
- * Specifies version 50 with 121 x 121 modules.
7827
- * </p>
7828
- */
7829
- VERSION_50:50,
7830
- /**
7831
- * <p>
7832
- * Specifies version 51 with 123 x 123 modules.
7833
- * </p>
7834
- */
7835
- VERSION_51:51,
7836
- /**
7837
- * <p>
7838
- * Specifies version 52 with 125 x 125 modules.
7839
- * </p>
7840
- */
7841
- VERSION_52:52,
7842
- /**
7843
- * <p>
7844
- * Specifies version 53 with 127 x 127 modules.
7845
- * </p>
7846
- */
7847
- VERSION_53:53,
7848
- /**
7849
- * <p>
7850
- * Specifies version 54 with 129 x 129 modules.
7851
- * </p>
7852
- */
7853
- VERSION_54:54,
7854
- /**
7855
- * <p>
7856
- * Specifies version 55 with 131 x 131 modules.
7857
- * </p>
7858
- */
7859
- VERSION_55:55,
7860
- /**
7861
- * <p>
7862
- * Specifies version 56 with 133 x 133 modules.
7863
- * </p>
7864
- */
7865
- VERSION_56:56,
7866
- /**
7867
- * <p>
7868
- * Specifies version 57 with 135 x 135 modules.
7869
- * </p>
7870
- */
7871
- VERSION_57:57,
7872
- /**
7873
- * <p>
7874
- * Specifies version 58 with 137 x 137 modules.
7875
- * </p>
7876
- */
7877
- VERSION_58:58,
7878
- /**
7879
- * <p>
7880
- * Specifies version 59 with 139 x 139 modules.
7881
- * </p>
7882
- */
7883
- VERSION_59:59,
7884
- /**
7885
- * <p>
7886
- * Specifies version 60 with 141 x 141 modules.
7887
- * </p>
7888
- */
7889
- VERSION_60:60,
7890
- /**
7891
- * <p>
7892
- * Specifies version 61 with 143 x 143 modules.
7893
- * </p>
7894
- */
7895
- VERSION_61:61,
7896
- /**
7897
- * <p>
7898
- * Specifies version 62 with 145 x 145 modules.
7899
- * </p>
7900
- */
7901
- VERSION_62:62,
7902
- /**
7903
- * <p>
7904
- * Specifies version 63 with 147 x 147 modules.
7905
- * </p>
7906
- */
7907
- VERSION_63:63,
7908
- /**
7909
- * <p>
7910
- * Specifies version 64 with 149 x 149 modules.
7911
- * </p>
7912
- */
7913
- VERSION_64:64,
7914
- /**
7915
- * <p>
7916
- * Specifies version 65 with 151 x 151 modules.
7917
- * </p>
7918
- */
7919
- VERSION_65:65,
7920
- /**
7921
- * <p>
7922
- * Specifies version 66 with 153 x 153 modules.
7923
- * </p>
7924
- */
7925
- VERSION_66:66,
7926
- /**
7927
- * <p>
7928
- * Specifies version 67 with 155 x 155 modules.
7929
- * </p>
7930
- */
7931
- VERSION_67:67,
7932
- /**
7933
- * <p>
7934
- * Specifies version 68 with 157 x 157 modules.
7935
- * </p>
7936
- */
7937
- VERSION_68:68,
7938
- /**
7939
- * <p>
7940
- * Specifies version 69 with 159 x 159 modules.
7941
- * </p>
7942
- */
7943
- VERSION_69:69,
7944
- /**
7945
- * <p>
7946
- * Specifies version 70 with 161 x 161 modules.
7947
- * </p>
7948
- */
7949
- VERSION_70:70,
7950
- /**
7951
- * <p>
7952
- * Specifies version 71 with 163 x 163 modules.
7953
- * </p>
7954
- */
7955
- VERSION_71:71,
7956
- /**
7957
- * <p>
7958
- * Specifies version 72 with 165 x 165 modules.
7959
- * </p>
7960
- */
7961
- VERSION_72:72,
7962
- /**
7963
- * <p>
7964
- * Specifies version 73 with 167 x 167 modules.
7965
- * </p>
7966
- */
7967
- VERSION_73:73,
7968
- /**
7969
- * <p>
7970
- * Specifies version 74 with 169 x 169 modules.
7971
- * </p>
7972
- */
7973
- VERSION_74:74,
7974
- /**
7975
- * <p>
7976
- * Specifies version 75 with 171 x 171 modules.
7977
- * </p>
7978
- */
7979
- VERSION_75:75,
7980
- /**
7981
- * <p>
7982
- * Specifies version 76 with 173 x 173 modules.
7983
- * </p>
7984
- */
7985
- VERSION_76:76,
7986
- /**
7987
- * <p>
7988
- * Specifies version 77 with 175 x 175 modules.
7989
- * </p>
7990
- */
7991
- VERSION_77:77,
7992
- /**
7993
- * <p>
7994
- * Specifies version 78 with 177 x 177 modules.
7995
- * </p>
7996
- */
7997
- VERSION_78:78,
7998
- /**
7999
- * <p>
8000
- * Specifies version 79 with 179 x 179 modules.
8001
- * </p>
8002
- */
8003
- VERSION_79:79,
8004
- /**
8005
- * <p>
8006
- * Specifies version 80 with 181 x 181 modules.
8007
- * </p>
8008
- */
8009
- VERSION_80:80,
8010
- /**
8011
- * <p>
8012
- * Specifies version 81 with 183 x 183 modules.
8013
- * </p>
8014
- */
8015
- VERSION_81:81,
8016
- /**
8017
- * <p>
8018
- * Specifies version 82 with 185 x 185 modules.
8019
- * </p>
8020
- */
8021
- VERSION_82:82,
8022
- /**
8023
- * <p>
8024
- * Specifies version 83 with 187 x 187 modules.
8025
- * </p>
8026
- */
8027
- VERSION_83:83,
8028
- /**
8029
- * <p>
8030
- * Specifies version 84 with 189 x 189 modules.
8031
- * </p>
8032
- */
8033
- VERSION_84:84,
8034
- }
8035
-
8036
- /**
8037
- * <p>
8038
- * Level of Reed-Solomon error correction. From low to high: L1, L2, L3, L4.
8039
- * </p>
8040
- */
8041
- HanXinErrorLevel =
8042
- {
8043
- /**
8044
- * <p>
8045
- * Allows recovery of 8% of the code text
8046
- * </p>
8047
- */
8048
- L1:0,
8049
- /**
8050
- * <p>
8051
- * Allows recovery of 15% of the code text
8052
- * </p>
8053
- */
8054
- L2:1,
8055
- /**
8056
- * <p>
8057
- * Allows recovery of 23% of the code text
8058
- * </p>
8059
- */
8060
- L3:2,
8061
- /**
8062
- * <p>
8063
- * Allows recovery of 30% of the code text
8064
- * </p>
8065
- */
8066
- L4:3
8067
- }
8068
-
8069
- /**
8070
- * <p>
8071
- * Han Xin Code encoding mode. It is recommended to use Auto with ASCII / Chinese characters or Unicode for Unicode characters.
8072
- * </p><p><hr><blockquote><pre>
8073
- * <pre>
8074
- * @example
8075
- * // Auto mode
8076
- * let codetext = "1234567890ABCDEFGabcdefg,Han Xin Code";
8077
- * let generator = new BarcodeGenerator(EncodeTypes.HAN_XIN, codetext);
8078
- * generator.save("test.bmp", BarcodeImageFormat.BMP);
8079
- *
8080
- * @example
8081
- * // Bytes mode
8082
- * let encodedArr = [0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9];
8083
- *
8084
- * //encode array to string
8085
- * let codetext = "";
8086
- * for (int i = 0; i <encodedArr.length; i++)
8087
- * {
8088
- * let bval = String.fromCharCode(encodedArr[i]);
8089
- * codetext += bval;
8090
- * }
8091
- *
8092
- * let generator = new BarcodeGenerator(EncodeTypes.HAN_XIN, codetext);
8093
- * generator.getParameters().getBarcode().getHanXin().setHanXinEncodeMode(HanXinEncodeMode.BYTES);
8094
- * generator.save("test.bmp", BarcodeImageFormat.BMP);
8095
- *
8096
- * @example
8097
- * // ECI mode
8098
- * let codetext = "ΑΒΓΔΕ";
8099
- * let generator = new BarcodeGenerator(EncodeTypes.HAN_XIN, codetext);
8100
- * generator.getParameters().getBarcode().getHanXin().setHanXinEncodeMode(HanXinEncodeMode.ECI);
8101
- * generator.getParameters().getBarcode().getHanXin().setHanXinECIEncoding(ECIEncodings.ISO_8859_7);
8102
- * generator.save("test.bmp", BarcodeImageFormat.BMP);
8103
- *
8104
- * @example
8105
- * // URI mode
8106
- * let codetext = "https://www.test.com/%BC%DE%%%ab/search=test";
8107
- * generator = new BarcodeGenerator(EncodeTypes.HAN_XIN, codetext);
8108
- * generator.getParameters().getBarcode().getHanXin().setHanXinEncodeMode(HanXinEncodeMode.URI);
8109
- * generator.save("test.bmp", BarcodeImageFormat.BMP);
8110
- *
8111
- * // Extended mode - TBD
8112
- * </pre>
8113
- * </pre></blockquote></hr></p>
8114
- */
8115
- HanXinEncodeMode =
8116
- {
8117
- /**
8118
- * <p>
8119
- * Sequence of Numeric, Text, ECI, Binary Bytes and 4 GB18030 modes changing automatically.
8120
- * </p>
8121
- */
8122
- AUTO:0,
8123
- /**
8124
- * <p>
8125
- * Binary byte mode encodes binary data in any form and encodes them in their binary byte. Every byte in
8126
- * Binary Byte mode is represented by 8 bits.
8127
- * </p>
8128
- */
8129
- BINARY:1,
8130
- /**
8131
- * <p>
8132
- * Extended Channel Interpretation (ECI) mode
8133
- * </p>
8134
- */
8135
- ECI:2,
8136
- /**
8137
- * <p>
8138
- * Unicode mode designs a way to represent any text data reference to UTF8 encoding/charset in Han Xin Code.
8139
- * </p>
8140
- */
8141
- UNICODE:3,
8142
- /**
8143
- * <p>
8144
- * URI mode indicates the data represented in Han Xin Code is Uniform Resource Identifier (URI)
8145
- * reference to RFC 3986.
8146
- * </p>
8147
- */
8148
- URI:4,
8149
- /**
8150
- * <p>
8151
- * Extended mode will allow more flexible combinations of other modes, this mode is currently not implemented.
8152
- * </p>
8153
- */
8154
- EXTENDED:5
8155
- }
8156
-
8157
- /**
8158
- * <p>
8159
- * Specify the type of the ECC to encode.
8160
- * </p>
8161
- */
8162
- DataMatrixVersion =
8163
- {
8164
- /**
8165
- * <p>
8166
- * Specifies to automatically pick up the smallest size for DataMatrix.
8167
- * This is default value.
8168
- * </p>
8169
- */
8170
- AUTO:0,
8171
- /**
8172
- * <p>
8173
- * Instructs to get symbol sizes from Rows And Columns parameters. Note that DataMatrix does not support
8174
- * custom rows and columns numbers. This option is not recommended to use.
8175
- * </p>
8176
- */
8177
- ROWS_COLUMNS:1,
8178
- /**
8179
- * <p>
8180
- * Specifies size of 9 x 9 modules for ECC000 type.
8181
- * </p>
8182
- */
8183
- ECC000_9x9:2,
8184
- /**
8185
- * <p>
8186
- * Specifies size of 11 x 11 modules for ECC000-ECC050 types.
8187
- * </p>
8188
- */
8189
- ECC000_050_11x11:3,
8190
- /**
8191
- * <p>
8192
- * Specifies size of 13 x 13 modules for ECC000-ECC100 types.
8193
- * </p>
8194
- */
8195
- ECC000_100_13x13:4,
8196
- /**
8197
- * <p>
8198
- * Specifies size of 15 x 15 modules for ECC000-ECC100 types.
8199
- * </p>
8200
- */
8201
- ECC000_100_15x15:5,
8202
- /**
8203
- * <p>
8204
- * Specifies size of 17 x 17 modules for ECC000-ECC140 types.
8205
- * </p>
8206
- */
8207
- ECC000_140_17x17:6,
8208
- /**
8209
- * <p>
8210
- * Specifies size of 19 x 19 modules for ECC000-ECC140 types.
8211
- * </p>
8212
- */
8213
- ECC000_140_19x19:7,
8214
- /**
8215
- * <p>
8216
- * Specifies size of 21 x 21 modules for ECC000-ECC140 types.
8217
- * </p>
8218
- */
8219
- ECC000_140_21x21:8,
8220
- /**
8221
- * <p>
8222
- * Specifies size of 23 x 23 modules for ECC000-ECC140 types.
8223
- * </p>
8224
- */
8225
- ECC000_140_23x23:9,
8226
- /**
8227
- * <p>
8228
- * Specifies size of 25 x 25 modules for ECC000-ECC140 types.
8229
- * </p>
8230
- */
8231
- ECC000_140_25x25:10,
8232
- /**
8233
- * <p>
8234
- * Specifies size of 27 x 27 modules for ECC000-ECC140 types.
8235
- * </p>
8236
- */
8237
- ECC000_140_27x27:11,
8238
- /**
8239
- * <p>
8240
- * Specifies size of 29 x 29 modules for ECC000-ECC140 types.
8241
- * </p>
8242
- */
8243
- ECC000_140_29x29:12,
8244
- /**
8245
- * <p>
8246
- * Specifies size of 31 x 31 modules for ECC000-ECC140 types.
8247
- * </p>
8248
- */
8249
- ECC000_140_31x31:13,
8250
- /**
8251
- * <p>
8252
- * Specifies size of 33 x 33 modules for ECC000-ECC140 types.
8253
- * </p>
8254
- */
8255
- ECC000_140_33x33:14,
8256
- /**
8257
- * <p>
8258
- * Specifies size of 35 x 35 modules for ECC000-ECC140 types.
8259
- * </p>
8260
- */
8261
- ECC000_140_35x35:15,
8262
- /**
8263
- * <p>
8264
- * Specifies size of 37 x 37 modules for ECC000-ECC140 types.
8265
- * </p>
8266
- */
8267
- ECC000_140_37x37:16,
8268
- /**
8269
- * <p>
8270
- * Specifies size of 39 x 39 modules for ECC000-ECC140 types.
8271
- * </p>
8272
- */
8273
- ECC000_140_39x39:17,
8274
- /**
8275
- * <p>
8276
- * Specifies size of 41 x 41 modules for ECC000-ECC140 types.
8277
- * </p>
8278
- */
8279
- ECC000_140_41x41:18,
8280
- /**
8281
- * <p>
8282
- * Specifies size of 43 x 43 modules for ECC000-ECC140 types.
8283
- * </p>
8284
- */
8285
- ECC000_140_43x43:19,
8286
- /**
8287
- * <p>
8288
- * Specifies size of 45 x 45 modules for ECC000-ECC140 types.
8289
- * </p>
8290
- */
8291
- ECC000_140_45x45:20,
8292
- /**
8293
- * <p>
8294
- * Specifies size of 47 x 47 modules for ECC000-ECC140 types.
8295
- * </p>
8296
- */
8297
- ECC000_140_47x47:21,
8298
- /**
8299
- * <p>
8300
- * Specifies size of 49 x 49 modules for ECC000-ECC140 types.
8301
- * </p>
8302
- */
8303
- ECC000_140_49x49:22,
8304
- /**
8305
- * <p>
8306
- * Specifies size of 10 x 10 modules for ECC200 type.
8307
- * </p>
8308
- */
8309
- ECC200_10x10:23,
8310
- /**
8311
- * <p>
8312
- * Specifies size of 12 x 12 modules for ECC200 type.
8313
- * </p>
8314
- */
8315
- ECC200_12x12:24,
8316
- /**
8317
- * <p>
8318
- * Specifies size of 14 x 14 modules for ECC200 type.
8319
- * </p>
8320
- */
8321
- ECC200_14x14:25,
8322
- /**
8323
- * <p>
8324
- * Specifies size of 16 x 16 modules for ECC200 type.
8325
- * </p>
8326
- */
8327
- ECC200_16x16:26,
8328
- /**
8329
- * <p>
8330
- * Specifies size of 18 x 18 modules for ECC200 type.
8331
- * </p>
8332
- */
8333
- ECC200_18x18:27,
8334
- /**
8335
- * <p>
8336
- * Specifies size of 20 x 20 modules for ECC200 type.
8337
- * </p>
8338
- */
8339
- ECC200_20x20:28,
8340
- /**
8341
- * <p>
8342
- * Specifies size of 22 x 22 modules for ECC200 type.
8343
- * </p>
8344
- */
8345
- ECC200_22x22:29,
8346
- /**
8347
- * <p>
8348
- * Specifies size of 24 x 24 modules for ECC200 type.
8349
- * </p>
8350
- */
8351
- ECC200_24x24:30,
8352
- /**
8353
- * <p>
8354
- * Specifies size of 26 x 26 modules for ECC200 type.
8355
- * </p>
8356
- */
8357
- ECC200_26x26:31,
8358
- /**
8359
- * <p>
8360
- * Specifies size of 32 x 32 modules for ECC200 type.
8361
- * </p>
8362
- */
8363
- ECC200_32x32:32,
8364
- /**
8365
- * <p>
8366
- * Specifies size of 36 x 36 modules for ECC200 type.
8367
- * </p>
8368
- */
8369
- ECC200_36x36:33,
8370
- /**
8371
- * <p>
8372
- * Specifies size of 40 x 40 modules for ECC200 type.
8373
- * </p>
8374
- */
8375
- ECC200_40x40:34,
8376
- /**
8377
- * <p>
8378
- * Specifies size of 44 x 44 modules for ECC200 type.
8379
- * </p>
8380
- */
8381
- ECC200_44x44:35,
8382
- /**
8383
- * <p>
8384
- * Specifies size of 48 x 48 modules for ECC200 type.
8385
- * </p>
8386
- */
8387
- ECC200_48x48:36,
8388
- /**
8389
- * <p>
8390
- * Specifies size of 52 x 52 modules for ECC200 type.
8391
- * </p>
8392
- */
8393
- ECC200_52x52:37,
8394
- /**
8395
- * <p>
8396
- * Specifies size of 64 x 64 modules for ECC200 type.
8397
- * </p>
8398
- */
8399
- ECC200_64x64:38,
8400
- /**
8401
- * <p>
8402
- * Specifies size of 72 x 72 modules for ECC200 type.
8403
- * </p>
8404
- */
8405
- ECC200_72x72:39,
8406
- /**
8407
- * <p>
8408
- * Specifies size of 80 x 80 modules for ECC200 type.
8409
- * </p>
8410
- */
8411
- ECC200_80x80:40,
8412
- /**
8413
- * <p>
8414
- * Specifies size of 88 x 88 modules for ECC200 type.
8415
- * </p>
8416
- */
8417
- ECC200_88x88:41,
8418
- /**
8419
- * <p>
8420
- * Specifies size of 96 x 96 modules for ECC200 type.
8421
- * </p>
8422
- */
8423
- ECC200_96x96:42,
8424
- /**
8425
- * <p>
8426
- * Specifies size of 104 x 104 modules for ECC200 type.
8427
- * </p>
8428
- */
8429
- ECC200_104x104:43,
8430
- /**
8431
- * <p>
8432
- * Specifies size of 120 x 120 modules for ECC200 type.
8433
- * </p>
8434
- */
8435
- ECC200_120x120:44,
8436
- /**
8437
- * <p>
8438
- * Specifies size of 132 x 132 modules for ECC200 type.
8439
- * </p>
8440
- */
8441
- ECC200_132x132:45,
8442
- /**
8443
- * <p>
8444
- * Specifies size of 144 x 144 modules for ECC200 type.
8445
- * </p>
8446
- */
8447
- ECC200_144x144:46,
8448
- /**
8449
- * <p>
8450
- * Specifies size of 8 x 18 modules for ECC200 type.
8451
- * </p>
8452
- */
8453
- ECC200_8x18:47,
8454
- /**
8455
- * <p>
8456
- * Specifies size of 8 x 32 modules for ECC200 type.
8457
- * </p>
8458
- */
8459
- ECC200_8x32:48,
8460
- /**
8461
- * <p>
8462
- * Specifies size of 12 x 26 modules for ECC200 type.
8463
- * </p>
8464
- */
8465
- ECC200_12x26:49,
8466
- /**
8467
- * <p>
8468
- * Specifies size of 12 x 36 modules for ECC200 type.
8469
- * </p>
8470
- */
8471
- ECC200_12x36:50,
8472
- /**
8473
- * <p>
8474
- * Specifies size of 16 x 36 modules for ECC200 type.
8475
- * </p>
8476
- */
8477
- ECC200_16x36:51,
8478
- /**
8479
- * <p>
8480
- * Specifies size of 16 x 48 modules for ECC200 type.
8481
- * </p>
8482
- */
8483
- ECC200_16x48:52,
8484
- /**
8485
- * <p>
8486
- * Specifies size of 8 x 48 modules for DMRE barcodes.
8487
- * </p>
8488
- */
8489
- DMRE_8x48:53,
8490
- /**
8491
- * <p>
8492
- * Specifies size of 8 x 64 modules for DMRE barcodes.
8493
- * </p>
8494
- */
8495
- DMRE_8x64:54,
8496
- /**
8497
- * <p>
8498
- * Specifies size of 8 x 80 modules for DMRE barcodes.
8499
- * </p>
8500
- */
8501
- DMRE_8x80:55,
8502
- /**
8503
- * <p>
8504
- * Specifies size of 8 x 96 modules for DMRE barcodes.
8505
- * </p>
8506
- */
8507
- DMRE_8x96:56,
8508
- /**
8509
- * <p>
8510
- * Specifies size of 8 x 120 modules for DMRE barcodes.
8511
- * </p>
8512
- */
8513
- DMRE_8x120:57,
8514
- /**
8515
- * <p>
8516
- * Specifies size of 8 x 144 modules for DMRE barcodes.
8517
- * </p>
8518
- */
8519
- DMRE_8x144:58,
8520
- /**
8521
- * <p>
8522
- * Specifies size of 12 x 64 modules for DMRE barcodes.
8523
- * </p>
8524
- */
8525
- DMRE_12x64:59,
8526
- /**
8527
- * <p>
8528
- * Specifies size of 12 x 88 modules for DMRE barcodes.
8529
- * </p>
8530
- */
8531
- DMRE_12x88:60,
8532
- /**
8533
- * <p>
8534
- * Specifies size of 16 x 64 modules for DMRE barcodes.
8535
- * </p>
8536
- */
8537
- DMRE_16x64:61,
8538
- /**
8539
- * <p>
8540
- * Specifies size of 20 x 36 modules for DMRE barcodes.
8541
- * </p>
8542
- */
8543
- DMRE_20x36:62,
8544
- /**
8545
- * <p>
8546
- * Specifies size of 20 x 44 modules for DMRE barcodes.
8547
- * </p>
8548
- */
8549
- DMRE_20x44:63,
8550
- /**
8551
- * <p>
8552
- * Specifies size of 20 x 64 modules for DMRE barcodes.
8553
- * </p>
8554
- */
8555
- DMRE_20x64:64,
8556
- /**
8557
- * <p>
8558
- * Specifies size of 22 x 48 modules for DMRE barcodes.
8559
- * </p>
8560
- */
8561
- DMRE_22x48:65,
8562
- /**
8563
- * <p>
8564
- * Specifies size of 24 x 48 modules for DMRE barcodes.
8565
- * </p>
8566
- */
8567
- DMRE_24x48:66,
8568
- /**
8569
- * <p>
8570
- * Specifies size of 24 x 64 modules for DMRE barcodes.
8571
- * </p>
8572
- */
8573
- DMRE_24x64:67,
8574
- /**
8575
- * <p>
8576
- * Specifies size of 26 x 40 modules for DMRE barcodes.
8577
- * </p>
8578
- */
8579
- DMRE_26x40:68,
8580
- /**
8581
- * <p>
8582
- * Specifies size of 26 x 48 modules for DMRE barcodes.
8583
- * </p>
8584
- */
8585
- DMRE_26x48:69,
8586
- /**
8587
- * <p>
8588
- * Specifies size of 26 x 64 modules for DMRE barcodes.
8589
- * </p>
8590
- */
8591
- DMRE_26x64:70
8592
- }
7918
+ {
7919
+ /**
7920
+ * <p>
7921
+ * Specifies to automatically pick up the best version.
7922
+ * This is default value.
7923
+ * </p>
7924
+ */
7925
+ AUTO: 0,
7926
+ /**
7927
+ * <p>
7928
+ * Specifies version 1 with 23 x 23 modules.
7929
+ * </p>
7930
+ */
7931
+ VERSION_01: 1,
7932
+ /**
7933
+ * <p>
7934
+ * Specifies version 2 with 25 x 25 modules.
7935
+ * </p>
7936
+ */
7937
+ VERSION_02: 2,
7938
+ /**
7939
+ * <p>
7940
+ * Specifies version 3 with 27 x 27 modules.
7941
+ * </p>
7942
+ */
7943
+ VERSION_03: 3,
7944
+ /**
7945
+ * <p>
7946
+ * Specifies version 4 with 29 x 29 modules.
7947
+ * </p>
7948
+ */
7949
+ VERSION_04: 4,
7950
+ /**
7951
+ * <p>
7952
+ * Specifies version 5 with 31 x 31 modules.
7953
+ * </p>
7954
+ */
7955
+ VERSION_05: 5,
7956
+ /**
7957
+ * <p>
7958
+ * Specifies version 6 with 33 x 33 modules.
7959
+ * </p>
7960
+ */
7961
+ VERSION_06: 6,
7962
+ /**
7963
+ * <p>
7964
+ * Specifies version 7 with 35 x 35 modules.
7965
+ * </p>
7966
+ */
7967
+ VERSION_07: 7,
7968
+ /**
7969
+ * <p>
7970
+ * Specifies version 8 with 37 x 37 modules.
7971
+ * </p>
7972
+ */
7973
+ VERSION_08: 8,
7974
+ /**
7975
+ * <p>
7976
+ * Specifies version 9 with 39 x 39 modules.
7977
+ * </p>
7978
+ */
7979
+ VERSION_09: 9,
7980
+ /**
7981
+ * <p>
7982
+ * Specifies version 10 with 41 x 41 modules.
7983
+ * </p>
7984
+ */
7985
+ VERSION_10: 10,
7986
+ /**
7987
+ * <p>
7988
+ * Specifies version 11 with 43 x 43 modules.
7989
+ * </p>
7990
+ */
7991
+ VERSION_11: 11,
7992
+ /**
7993
+ * <p>
7994
+ * Specifies version 12 with 45 x 45 modules.
7995
+ * </p>
7996
+ */
7997
+ VERSION_12: 12,
7998
+ /**
7999
+ * <p>
8000
+ * Specifies version 13 with 47 x 47 modules.
8001
+ * </p>
8002
+ */
8003
+ VERSION_13: 13,
8004
+ /**
8005
+ * <p>
8006
+ * Specifies version 14 with 49 x 49 modules.
8007
+ * </p>
8008
+ */
8009
+ VERSION_14: 14,
8010
+ /**
8011
+ * <p>
8012
+ * Specifies version 15 with 51 x 51 modules.
8013
+ * </p>
8014
+ */
8015
+ VERSION_15: 15,
8016
+ /**
8017
+ * <p>
8018
+ * Specifies version 16 with 53 x 53 modules.
8019
+ * </p>
8020
+ */
8021
+ VERSION_16: 16,
8022
+ /**
8023
+ * <p>
8024
+ * Specifies version 17 with 55 x 55 modules.
8025
+ * </p>
8026
+ */
8027
+ VERSION_17: 17,
8028
+ /**
8029
+ * <p>
8030
+ * Specifies version 18 with 57 x 57 modules.
8031
+ * </p>
8032
+ */
8033
+ VERSION_18: 18,
8034
+ /**
8035
+ * <p>
8036
+ * Specifies version 19 with 59 x 59 modules.
8037
+ * </p>
8038
+ */
8039
+ VERSION_19: 19,
8040
+ /**
8041
+ * <p>
8042
+ * Specifies version 20 with 61 x 61 modules.
8043
+ * </p>
8044
+ */
8045
+ VERSION_20: 20,
8046
+ /**
8047
+ * <p>
8048
+ * Specifies version 21 with 63 x 63 modules.
8049
+ * </p>
8050
+ */
8051
+ VERSION_21: 21,
8052
+ /**
8053
+ * <p>
8054
+ * Specifies version 22 with 65 x 65 modules.
8055
+ * </p>
8056
+ */
8057
+ VERSION_22: 22,
8058
+ /**
8059
+ * <p>
8060
+ * Specifies version 23 with 67 x 67 modules.
8061
+ * </p>
8062
+ */
8063
+ VERSION_23: 23,
8064
+ /**
8065
+ * <p>
8066
+ * Specifies version 24 with 69 x 69 modules.
8067
+ * </p>
8068
+ */
8069
+ VERSION_24: 24,
8070
+ /**
8071
+ * <p>
8072
+ * Specifies version 25 with 71 x 71 modules.
8073
+ * </p>
8074
+ */
8075
+ VERSION_25: 25,
8076
+ /**
8077
+ * <p>
8078
+ * Specifies version 26 with 73 x 73 modules.
8079
+ * </p>
8080
+ */
8081
+ VERSION_26: 26,
8082
+ /**
8083
+ * <p>
8084
+ * Specifies version 27 with 75 x 75 modules.
8085
+ * </p>
8086
+ */
8087
+ VERSION_27: 27,
8088
+ /**
8089
+ * <p>
8090
+ * Specifies version 28 with 77 x 77 modules.
8091
+ * </p>
8092
+ */
8093
+ VERSION_28: 28,
8094
+ /**
8095
+ * <p>
8096
+ * Specifies version 29 with 79 x 79 modules.
8097
+ * </p>
8098
+ */
8099
+ VERSION_29: 29,
8100
+ /**
8101
+ * <p>
8102
+ * Specifies version 30 with 81 x 81 modules.
8103
+ * </p>
8104
+ */
8105
+ VERSION_30: 30,
8106
+ /**
8107
+ * <p>
8108
+ * Specifies version 31 with 83 x 83 modules.
8109
+ * </p>
8110
+ */
8111
+ VERSION_31: 31,
8112
+ /**
8113
+ * <p>
8114
+ * Specifies version 32 with 85 x 85 modules.
8115
+ * </p>
8116
+ */
8117
+ VERSION_32: 32,
8118
+ /**
8119
+ * <p>
8120
+ * Specifies version 33 with 87 x 87 modules.
8121
+ * </p>
8122
+ */
8123
+ VERSION_33: 33,
8124
+ /**
8125
+ * <p>
8126
+ * Specifies version 34 with 89 x 89 modules.
8127
+ * </p>
8128
+ */
8129
+ VERSION_34: 34,
8130
+ /**
8131
+ * <p>
8132
+ * Specifies version 35 with 91 x 91 modules.
8133
+ * </p>
8134
+ */
8135
+ VERSION_35: 35,
8136
+ /**
8137
+ * <p>
8138
+ * Specifies version 36 with 93 x 93 modules.
8139
+ * </p>
8140
+ */
8141
+ VERSION_36: 36,
8142
+ /**
8143
+ * <p>
8144
+ * Specifies version 37 with 95 x 95 modules.
8145
+ * </p>
8146
+ */
8147
+ VERSION_37: 37,
8148
+ /**
8149
+ * <p>
8150
+ * Specifies version 38 with 97 x 97 modules.
8151
+ * </p>
8152
+ */
8153
+ VERSION_38: 38,
8154
+ /**
8155
+ * <p>
8156
+ * Specifies version 39 with 99 x 99 modules.
8157
+ * </p>
8158
+ */
8159
+ VERSION_39: 39,
8160
+ /**
8161
+ * <p>
8162
+ * Specifies version 40 with 101 x 101 modules.
8163
+ * </p>
8164
+ */
8165
+ VERSION_40: 40,
8166
+ /**
8167
+ * <p>
8168
+ * Specifies version 41 with 103 x 103 modules.
8169
+ * </p>
8170
+ */
8171
+ VERSION_41: 41,
8172
+ /**
8173
+ * <p>
8174
+ * Specifies version 42 with 105 x 105 modules.
8175
+ * </p>
8176
+ */
8177
+ VERSION_42: 42,
8178
+ /**
8179
+ * <p>
8180
+ * Specifies version 43 with 107 x 107 modules.
8181
+ * </p>
8182
+ */
8183
+ VERSION_43: 43,
8184
+ /**
8185
+ * <p>
8186
+ * Specifies version 44 with 109 x 109 modules.
8187
+ * </p>
8188
+ */
8189
+ VERSION_44: 44,
8190
+ /**
8191
+ * <p>
8192
+ * Specifies version 45 with 111 x 111 modules.
8193
+ * </p>
8194
+ */
8195
+ VERSION_45: 45,
8196
+ /**
8197
+ * <p>
8198
+ * Specifies version 46 with 113 x 113 modules.
8199
+ * </p>
8200
+ */
8201
+ VERSION_46: 46,
8202
+ /**
8203
+ * <p>
8204
+ * Specifies version 47 with 115 x 115 modules.
8205
+ * </p>
8206
+ */
8207
+ VERSION_47: 47,
8208
+ /**
8209
+ * <p>
8210
+ * Specifies version 48 with 117 x 117 modules.
8211
+ * </p>
8212
+ */
8213
+ VERSION_48: 48,
8214
+ /**
8215
+ * <p>
8216
+ * Specifies version 49 with 119 x 119 modules.
8217
+ * </p>
8218
+ */
8219
+ VERSION_49: 49,
8220
+ /**
8221
+ * <p>
8222
+ * Specifies version 50 with 121 x 121 modules.
8223
+ * </p>
8224
+ */
8225
+ VERSION_50: 50,
8226
+ /**
8227
+ * <p>
8228
+ * Specifies version 51 with 123 x 123 modules.
8229
+ * </p>
8230
+ */
8231
+ VERSION_51: 51,
8232
+ /**
8233
+ * <p>
8234
+ * Specifies version 52 with 125 x 125 modules.
8235
+ * </p>
8236
+ */
8237
+ VERSION_52: 52,
8238
+ /**
8239
+ * <p>
8240
+ * Specifies version 53 with 127 x 127 modules.
8241
+ * </p>
8242
+ */
8243
+ VERSION_53: 53,
8244
+ /**
8245
+ * <p>
8246
+ * Specifies version 54 with 129 x 129 modules.
8247
+ * </p>
8248
+ */
8249
+ VERSION_54: 54,
8250
+ /**
8251
+ * <p>
8252
+ * Specifies version 55 with 131 x 131 modules.
8253
+ * </p>
8254
+ */
8255
+ VERSION_55: 55,
8256
+ /**
8257
+ * <p>
8258
+ * Specifies version 56 with 133 x 133 modules.
8259
+ * </p>
8260
+ */
8261
+ VERSION_56: 56,
8262
+ /**
8263
+ * <p>
8264
+ * Specifies version 57 with 135 x 135 modules.
8265
+ * </p>
8266
+ */
8267
+ VERSION_57: 57,
8268
+ /**
8269
+ * <p>
8270
+ * Specifies version 58 with 137 x 137 modules.
8271
+ * </p>
8272
+ */
8273
+ VERSION_58: 58,
8274
+ /**
8275
+ * <p>
8276
+ * Specifies version 59 with 139 x 139 modules.
8277
+ * </p>
8278
+ */
8279
+ VERSION_59: 59,
8280
+ /**
8281
+ * <p>
8282
+ * Specifies version 60 with 141 x 141 modules.
8283
+ * </p>
8284
+ */
8285
+ VERSION_60: 60,
8286
+ /**
8287
+ * <p>
8288
+ * Specifies version 61 with 143 x 143 modules.
8289
+ * </p>
8290
+ */
8291
+ VERSION_61: 61,
8292
+ /**
8293
+ * <p>
8294
+ * Specifies version 62 with 145 x 145 modules.
8295
+ * </p>
8296
+ */
8297
+ VERSION_62: 62,
8298
+ /**
8299
+ * <p>
8300
+ * Specifies version 63 with 147 x 147 modules.
8301
+ * </p>
8302
+ */
8303
+ VERSION_63: 63,
8304
+ /**
8305
+ * <p>
8306
+ * Specifies version 64 with 149 x 149 modules.
8307
+ * </p>
8308
+ */
8309
+ VERSION_64: 64,
8310
+ /**
8311
+ * <p>
8312
+ * Specifies version 65 with 151 x 151 modules.
8313
+ * </p>
8314
+ */
8315
+ VERSION_65: 65,
8316
+ /**
8317
+ * <p>
8318
+ * Specifies version 66 with 153 x 153 modules.
8319
+ * </p>
8320
+ */
8321
+ VERSION_66: 66,
8322
+ /**
8323
+ * <p>
8324
+ * Specifies version 67 with 155 x 155 modules.
8325
+ * </p>
8326
+ */
8327
+ VERSION_67: 67,
8328
+ /**
8329
+ * <p>
8330
+ * Specifies version 68 with 157 x 157 modules.
8331
+ * </p>
8332
+ */
8333
+ VERSION_68: 68,
8334
+ /**
8335
+ * <p>
8336
+ * Specifies version 69 with 159 x 159 modules.
8337
+ * </p>
8338
+ */
8339
+ VERSION_69: 69,
8340
+ /**
8341
+ * <p>
8342
+ * Specifies version 70 with 161 x 161 modules.
8343
+ * </p>
8344
+ */
8345
+ VERSION_70: 70,
8346
+ /**
8347
+ * <p>
8348
+ * Specifies version 71 with 163 x 163 modules.
8349
+ * </p>
8350
+ */
8351
+ VERSION_71: 71,
8352
+ /**
8353
+ * <p>
8354
+ * Specifies version 72 with 165 x 165 modules.
8355
+ * </p>
8356
+ */
8357
+ VERSION_72: 72,
8358
+ /**
8359
+ * <p>
8360
+ * Specifies version 73 with 167 x 167 modules.
8361
+ * </p>
8362
+ */
8363
+ VERSION_73: 73,
8364
+ /**
8365
+ * <p>
8366
+ * Specifies version 74 with 169 x 169 modules.
8367
+ * </p>
8368
+ */
8369
+ VERSION_74: 74,
8370
+ /**
8371
+ * <p>
8372
+ * Specifies version 75 with 171 x 171 modules.
8373
+ * </p>
8374
+ */
8375
+ VERSION_75: 75,
8376
+ /**
8377
+ * <p>
8378
+ * Specifies version 76 with 173 x 173 modules.
8379
+ * </p>
8380
+ */
8381
+ VERSION_76: 76,
8382
+ /**
8383
+ * <p>
8384
+ * Specifies version 77 with 175 x 175 modules.
8385
+ * </p>
8386
+ */
8387
+ VERSION_77: 77,
8388
+ /**
8389
+ * <p>
8390
+ * Specifies version 78 with 177 x 177 modules.
8391
+ * </p>
8392
+ */
8393
+ VERSION_78: 78,
8394
+ /**
8395
+ * <p>
8396
+ * Specifies version 79 with 179 x 179 modules.
8397
+ * </p>
8398
+ */
8399
+ VERSION_79: 79,
8400
+ /**
8401
+ * <p>
8402
+ * Specifies version 80 with 181 x 181 modules.
8403
+ * </p>
8404
+ */
8405
+ VERSION_80: 80,
8406
+ /**
8407
+ * <p>
8408
+ * Specifies version 81 with 183 x 183 modules.
8409
+ * </p>
8410
+ */
8411
+ VERSION_81: 81,
8412
+ /**
8413
+ * <p>
8414
+ * Specifies version 82 with 185 x 185 modules.
8415
+ * </p>
8416
+ */
8417
+ VERSION_82: 82,
8418
+ /**
8419
+ * <p>
8420
+ * Specifies version 83 with 187 x 187 modules.
8421
+ * </p>
8422
+ */
8423
+ VERSION_83: 83,
8424
+ /**
8425
+ * <p>
8426
+ * Specifies version 84 with 189 x 189 modules.
8427
+ * </p>
8428
+ */
8429
+ VERSION_84: 84,
8430
+ }
8431
+
8432
+ /**
8433
+ * <p>
8434
+ * Level of Reed-Solomon error correction. From low to high: L1, L2, L3, L4.
8435
+ * </p>
8436
+ */
8437
+ HanXinErrorLevel =
8438
+ {
8439
+ /**
8440
+ * <p>
8441
+ * Allows recovery of 8% of the code text
8442
+ * </p>
8443
+ */
8444
+ L1: 0,
8445
+ /**
8446
+ * <p>
8447
+ * Allows recovery of 15% of the code text
8448
+ * </p>
8449
+ */
8450
+ L2: 1,
8451
+ /**
8452
+ * <p>
8453
+ * Allows recovery of 23% of the code text
8454
+ * </p>
8455
+ */
8456
+ L3: 2,
8457
+ /**
8458
+ * <p>
8459
+ * Allows recovery of 30% of the code text
8460
+ * </p>
8461
+ */
8462
+ L4: 3
8463
+ }
8464
+
8465
+ /**
8466
+ * <p>
8467
+ * Han Xin Code encoding mode. It is recommended to use Auto with ASCII / Chinese characters or Unicode for Unicode characters.
8468
+ * </p><p><hr><blockquote><pre>
8469
+ * <pre>
8470
+ * @example
8471
+ * // Auto mode
8472
+ * let codetext = "1234567890ABCDEFGabcdefg,Han Xin Code";
8473
+ * let generator = new BarcodeGenerator(EncodeTypes.HAN_XIN, codetext);
8474
+ * generator.save("test.bmp", BarcodeImageFormat.BMP);
8475
+ *
8476
+ * @example
8477
+ * // Bytes mode
8478
+ * let encodedArr = [0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9];
8479
+ *
8480
+ * //encode array to string
8481
+ * let codetext = "";
8482
+ * for (int i = 0; i <encodedArr.length; i++)
8483
+ * {
8484
+ * let bval = String.fromCharCode(encodedArr[i]);
8485
+ * codetext += bval;
8486
+ * }
8487
+ *
8488
+ * let generator = new BarcodeGenerator(EncodeTypes.HAN_XIN, codetext);
8489
+ * generator.getParameters().getBarcode().getHanXin().setHanXinEncodeMode(HanXinEncodeMode.BYTES);
8490
+ * generator.save("test.bmp", BarcodeImageFormat.BMP);
8491
+ *
8492
+ * @example
8493
+ * // ECI mode
8494
+ * let codetext = "ΑΒΓΔΕ";
8495
+ * let generator = new BarcodeGenerator(EncodeTypes.HAN_XIN, codetext);
8496
+ * generator.getParameters().getBarcode().getHanXin().setHanXinEncodeMode(HanXinEncodeMode.ECI);
8497
+ * generator.getParameters().getBarcode().getHanXin().setHanXinECIEncoding(ECIEncodings.ISO_8859_7);
8498
+ * generator.save("test.bmp", BarcodeImageFormat.BMP);
8499
+ *
8500
+ * @example
8501
+ * // URI mode
8502
+ * let codetext = "https://www.test.com/%BC%DE%%%ab/search=test";
8503
+ * generator = new BarcodeGenerator(EncodeTypes.HAN_XIN, codetext);
8504
+ * generator.getParameters().getBarcode().getHanXin().setHanXinEncodeMode(HanXinEncodeMode.URI);
8505
+ * generator.save("test.bmp", BarcodeImageFormat.BMP);
8506
+ *
8507
+ * // Extended mode - TBD
8508
+ * </pre>
8509
+ * </pre></blockquote></hr></p>
8510
+ */
8511
+ HanXinEncodeMode =
8512
+ {
8513
+ /**
8514
+ * <p>
8515
+ * Sequence of Numeric, Text, ECI, Binary Bytes and 4 GB18030 modes changing automatically.
8516
+ * </p>
8517
+ */
8518
+ AUTO: 0,
8519
+ /**
8520
+ * <p>
8521
+ * Binary byte mode encodes binary data in any form and encodes them in their binary byte. Every byte in
8522
+ * Binary Byte mode is represented by 8 bits.
8523
+ * </p>
8524
+ */
8525
+ BINARY: 1,
8526
+ /**
8527
+ * <p>
8528
+ * Extended Channel Interpretation (ECI) mode
8529
+ * </p>
8530
+ */
8531
+ ECI: 2,
8532
+ /**
8533
+ * <p>
8534
+ * Unicode mode designs a way to represent any text data reference to UTF8 encoding/charset in Han Xin Code.
8535
+ * </p>
8536
+ */
8537
+ UNICODE: 3,
8538
+ /**
8539
+ * <p>
8540
+ * URI mode indicates the data represented in Han Xin Code is Uniform Resource Identifier (URI)
8541
+ * reference to RFC 3986.
8542
+ * </p>
8543
+ */
8544
+ URI: 4,
8545
+ /**
8546
+ * <p>
8547
+ * Extended mode will allow more flexible combinations of other modes, this mode is currently not implemented.
8548
+ * </p>
8549
+ */
8550
+ EXTENDED: 5
8551
+ }
8552
+
8553
+ /**
8554
+ * <p>
8555
+ * Specify the type of the ECC to encode.
8556
+ * </p>
8557
+ */
8558
+ DataMatrixVersion =
8559
+ {
8560
+ /**
8561
+ * <p>
8562
+ * Specifies to automatically pick up the smallest size for DataMatrix.
8563
+ * This is default value.
8564
+ * </p>
8565
+ */
8566
+ AUTO: 0,
8567
+ /**
8568
+ * <p>
8569
+ * Instructs to get symbol sizes from Rows And Columns parameters. Note that DataMatrix does not support
8570
+ * custom rows and columns numbers. This option is not recommended to use.
8571
+ * </p>
8572
+ */
8573
+ ROWS_COLUMNS: 1,
8574
+ /**
8575
+ * <p>
8576
+ * Specifies size of 9 x 9 modules for ECC000 type.
8577
+ * </p>
8578
+ */
8579
+ ECC000_9x9: 2,
8580
+ /**
8581
+ * <p>
8582
+ * Specifies size of 11 x 11 modules for ECC000-ECC050 types.
8583
+ * </p>
8584
+ */
8585
+ ECC000_050_11x11: 3,
8586
+ /**
8587
+ * <p>
8588
+ * Specifies size of 13 x 13 modules for ECC000-ECC100 types.
8589
+ * </p>
8590
+ */
8591
+ ECC000_100_13x13: 4,
8592
+ /**
8593
+ * <p>
8594
+ * Specifies size of 15 x 15 modules for ECC000-ECC100 types.
8595
+ * </p>
8596
+ */
8597
+ ECC000_100_15x15: 5,
8598
+ /**
8599
+ * <p>
8600
+ * Specifies size of 17 x 17 modules for ECC000-ECC140 types.
8601
+ * </p>
8602
+ */
8603
+ ECC000_140_17x17: 6,
8604
+ /**
8605
+ * <p>
8606
+ * Specifies size of 19 x 19 modules for ECC000-ECC140 types.
8607
+ * </p>
8608
+ */
8609
+ ECC000_140_19x19: 7,
8610
+ /**
8611
+ * <p>
8612
+ * Specifies size of 21 x 21 modules for ECC000-ECC140 types.
8613
+ * </p>
8614
+ */
8615
+ ECC000_140_21x21: 8,
8616
+ /**
8617
+ * <p>
8618
+ * Specifies size of 23 x 23 modules for ECC000-ECC140 types.
8619
+ * </p>
8620
+ */
8621
+ ECC000_140_23x23: 9,
8622
+ /**
8623
+ * <p>
8624
+ * Specifies size of 25 x 25 modules for ECC000-ECC140 types.
8625
+ * </p>
8626
+ */
8627
+ ECC000_140_25x25: 10,
8628
+ /**
8629
+ * <p>
8630
+ * Specifies size of 27 x 27 modules for ECC000-ECC140 types.
8631
+ * </p>
8632
+ */
8633
+ ECC000_140_27x27: 11,
8634
+ /**
8635
+ * <p>
8636
+ * Specifies size of 29 x 29 modules for ECC000-ECC140 types.
8637
+ * </p>
8638
+ */
8639
+ ECC000_140_29x29: 12,
8640
+ /**
8641
+ * <p>
8642
+ * Specifies size of 31 x 31 modules for ECC000-ECC140 types.
8643
+ * </p>
8644
+ */
8645
+ ECC000_140_31x31: 13,
8646
+ /**
8647
+ * <p>
8648
+ * Specifies size of 33 x 33 modules for ECC000-ECC140 types.
8649
+ * </p>
8650
+ */
8651
+ ECC000_140_33x33: 14,
8652
+ /**
8653
+ * <p>
8654
+ * Specifies size of 35 x 35 modules for ECC000-ECC140 types.
8655
+ * </p>
8656
+ */
8657
+ ECC000_140_35x35: 15,
8658
+ /**
8659
+ * <p>
8660
+ * Specifies size of 37 x 37 modules for ECC000-ECC140 types.
8661
+ * </p>
8662
+ */
8663
+ ECC000_140_37x37: 16,
8664
+ /**
8665
+ * <p>
8666
+ * Specifies size of 39 x 39 modules for ECC000-ECC140 types.
8667
+ * </p>
8668
+ */
8669
+ ECC000_140_39x39: 17,
8670
+ /**
8671
+ * <p>
8672
+ * Specifies size of 41 x 41 modules for ECC000-ECC140 types.
8673
+ * </p>
8674
+ */
8675
+ ECC000_140_41x41: 18,
8676
+ /**
8677
+ * <p>
8678
+ * Specifies size of 43 x 43 modules for ECC000-ECC140 types.
8679
+ * </p>
8680
+ */
8681
+ ECC000_140_43x43: 19,
8682
+ /**
8683
+ * <p>
8684
+ * Specifies size of 45 x 45 modules for ECC000-ECC140 types.
8685
+ * </p>
8686
+ */
8687
+ ECC000_140_45x45: 20,
8688
+ /**
8689
+ * <p>
8690
+ * Specifies size of 47 x 47 modules for ECC000-ECC140 types.
8691
+ * </p>
8692
+ */
8693
+ ECC000_140_47x47: 21,
8694
+ /**
8695
+ * <p>
8696
+ * Specifies size of 49 x 49 modules for ECC000-ECC140 types.
8697
+ * </p>
8698
+ */
8699
+ ECC000_140_49x49: 22,
8700
+ /**
8701
+ * <p>
8702
+ * Specifies size of 10 x 10 modules for ECC200 type.
8703
+ * </p>
8704
+ */
8705
+ ECC200_10x10: 23,
8706
+ /**
8707
+ * <p>
8708
+ * Specifies size of 12 x 12 modules for ECC200 type.
8709
+ * </p>
8710
+ */
8711
+ ECC200_12x12: 24,
8712
+ /**
8713
+ * <p>
8714
+ * Specifies size of 14 x 14 modules for ECC200 type.
8715
+ * </p>
8716
+ */
8717
+ ECC200_14x14: 25,
8718
+ /**
8719
+ * <p>
8720
+ * Specifies size of 16 x 16 modules for ECC200 type.
8721
+ * </p>
8722
+ */
8723
+ ECC200_16x16: 26,
8724
+ /**
8725
+ * <p>
8726
+ * Specifies size of 18 x 18 modules for ECC200 type.
8727
+ * </p>
8728
+ */
8729
+ ECC200_18x18: 27,
8730
+ /**
8731
+ * <p>
8732
+ * Specifies size of 20 x 20 modules for ECC200 type.
8733
+ * </p>
8734
+ */
8735
+ ECC200_20x20: 28,
8736
+ /**
8737
+ * <p>
8738
+ * Specifies size of 22 x 22 modules for ECC200 type.
8739
+ * </p>
8740
+ */
8741
+ ECC200_22x22: 29,
8742
+ /**
8743
+ * <p>
8744
+ * Specifies size of 24 x 24 modules for ECC200 type.
8745
+ * </p>
8746
+ */
8747
+ ECC200_24x24: 30,
8748
+ /**
8749
+ * <p>
8750
+ * Specifies size of 26 x 26 modules for ECC200 type.
8751
+ * </p>
8752
+ */
8753
+ ECC200_26x26: 31,
8754
+ /**
8755
+ * <p>
8756
+ * Specifies size of 32 x 32 modules for ECC200 type.
8757
+ * </p>
8758
+ */
8759
+ ECC200_32x32: 32,
8760
+ /**
8761
+ * <p>
8762
+ * Specifies size of 36 x 36 modules for ECC200 type.
8763
+ * </p>
8764
+ */
8765
+ ECC200_36x36: 33,
8766
+ /**
8767
+ * <p>
8768
+ * Specifies size of 40 x 40 modules for ECC200 type.
8769
+ * </p>
8770
+ */
8771
+ ECC200_40x40: 34,
8772
+ /**
8773
+ * <p>
8774
+ * Specifies size of 44 x 44 modules for ECC200 type.
8775
+ * </p>
8776
+ */
8777
+ ECC200_44x44: 35,
8778
+ /**
8779
+ * <p>
8780
+ * Specifies size of 48 x 48 modules for ECC200 type.
8781
+ * </p>
8782
+ */
8783
+ ECC200_48x48: 36,
8784
+ /**
8785
+ * <p>
8786
+ * Specifies size of 52 x 52 modules for ECC200 type.
8787
+ * </p>
8788
+ */
8789
+ ECC200_52x52: 37,
8790
+ /**
8791
+ * <p>
8792
+ * Specifies size of 64 x 64 modules for ECC200 type.
8793
+ * </p>
8794
+ */
8795
+ ECC200_64x64: 38,
8796
+ /**
8797
+ * <p>
8798
+ * Specifies size of 72 x 72 modules for ECC200 type.
8799
+ * </p>
8800
+ */
8801
+ ECC200_72x72: 39,
8802
+ /**
8803
+ * <p>
8804
+ * Specifies size of 80 x 80 modules for ECC200 type.
8805
+ * </p>
8806
+ */
8807
+ ECC200_80x80: 40,
8808
+ /**
8809
+ * <p>
8810
+ * Specifies size of 88 x 88 modules for ECC200 type.
8811
+ * </p>
8812
+ */
8813
+ ECC200_88x88: 41,
8814
+ /**
8815
+ * <p>
8816
+ * Specifies size of 96 x 96 modules for ECC200 type.
8817
+ * </p>
8818
+ */
8819
+ ECC200_96x96: 42,
8820
+ /**
8821
+ * <p>
8822
+ * Specifies size of 104 x 104 modules for ECC200 type.
8823
+ * </p>
8824
+ */
8825
+ ECC200_104x104: 43,
8826
+ /**
8827
+ * <p>
8828
+ * Specifies size of 120 x 120 modules for ECC200 type.
8829
+ * </p>
8830
+ */
8831
+ ECC200_120x120: 44,
8832
+ /**
8833
+ * <p>
8834
+ * Specifies size of 132 x 132 modules for ECC200 type.
8835
+ * </p>
8836
+ */
8837
+ ECC200_132x132: 45,
8838
+ /**
8839
+ * <p>
8840
+ * Specifies size of 144 x 144 modules for ECC200 type.
8841
+ * </p>
8842
+ */
8843
+ ECC200_144x144: 46,
8844
+ /**
8845
+ * <p>
8846
+ * Specifies size of 8 x 18 modules for ECC200 type.
8847
+ * </p>
8848
+ */
8849
+ ECC200_8x18: 47,
8850
+ /**
8851
+ * <p>
8852
+ * Specifies size of 8 x 32 modules for ECC200 type.
8853
+ * </p>
8854
+ */
8855
+ ECC200_8x32: 48,
8856
+ /**
8857
+ * <p>
8858
+ * Specifies size of 12 x 26 modules for ECC200 type.
8859
+ * </p>
8860
+ */
8861
+ ECC200_12x26: 49,
8862
+ /**
8863
+ * <p>
8864
+ * Specifies size of 12 x 36 modules for ECC200 type.
8865
+ * </p>
8866
+ */
8867
+ ECC200_12x36: 50,
8868
+ /**
8869
+ * <p>
8870
+ * Specifies size of 16 x 36 modules for ECC200 type.
8871
+ * </p>
8872
+ */
8873
+ ECC200_16x36: 51,
8874
+ /**
8875
+ * <p>
8876
+ * Specifies size of 16 x 48 modules for ECC200 type.
8877
+ * </p>
8878
+ */
8879
+ ECC200_16x48: 52,
8880
+ /**
8881
+ * <p>
8882
+ * Specifies size of 8 x 48 modules for DMRE barcodes.
8883
+ * </p>
8884
+ */
8885
+ DMRE_8x48: 53,
8886
+ /**
8887
+ * <p>
8888
+ * Specifies size of 8 x 64 modules for DMRE barcodes.
8889
+ * </p>
8890
+ */
8891
+ DMRE_8x64: 54,
8892
+ /**
8893
+ * <p>
8894
+ * Specifies size of 8 x 80 modules for DMRE barcodes.
8895
+ * </p>
8896
+ */
8897
+ DMRE_8x80: 55,
8898
+ /**
8899
+ * <p>
8900
+ * Specifies size of 8 x 96 modules for DMRE barcodes.
8901
+ * </p>
8902
+ */
8903
+ DMRE_8x96: 56,
8904
+ /**
8905
+ * <p>
8906
+ * Specifies size of 8 x 120 modules for DMRE barcodes.
8907
+ * </p>
8908
+ */
8909
+ DMRE_8x120: 57,
8910
+ /**
8911
+ * <p>
8912
+ * Specifies size of 8 x 144 modules for DMRE barcodes.
8913
+ * </p>
8914
+ */
8915
+ DMRE_8x144: 58,
8916
+ /**
8917
+ * <p>
8918
+ * Specifies size of 12 x 64 modules for DMRE barcodes.
8919
+ * </p>
8920
+ */
8921
+ DMRE_12x64: 59,
8922
+ /**
8923
+ * <p>
8924
+ * Specifies size of 12 x 88 modules for DMRE barcodes.
8925
+ * </p>
8926
+ */
8927
+ DMRE_12x88: 60,
8928
+ /**
8929
+ * <p>
8930
+ * Specifies size of 16 x 64 modules for DMRE barcodes.
8931
+ * </p>
8932
+ */
8933
+ DMRE_16x64: 61,
8934
+ /**
8935
+ * <p>
8936
+ * Specifies size of 20 x 36 modules for DMRE barcodes.
8937
+ * </p>
8938
+ */
8939
+ DMRE_20x36: 62,
8940
+ /**
8941
+ * <p>
8942
+ * Specifies size of 20 x 44 modules for DMRE barcodes.
8943
+ * </p>
8944
+ */
8945
+ DMRE_20x44: 63,
8946
+ /**
8947
+ * <p>
8948
+ * Specifies size of 20 x 64 modules for DMRE barcodes.
8949
+ * </p>
8950
+ */
8951
+ DMRE_20x64: 64,
8952
+ /**
8953
+ * <p>
8954
+ * Specifies size of 22 x 48 modules for DMRE barcodes.
8955
+ * </p>
8956
+ */
8957
+ DMRE_22x48: 65,
8958
+ /**
8959
+ * <p>
8960
+ * Specifies size of 24 x 48 modules for DMRE barcodes.
8961
+ * </p>
8962
+ */
8963
+ DMRE_24x48: 66,
8964
+ /**
8965
+ * <p>
8966
+ * Specifies size of 24 x 64 modules for DMRE barcodes.
8967
+ * </p>
8968
+ */
8969
+ DMRE_24x64: 67,
8970
+ /**
8971
+ * <p>
8972
+ * Specifies size of 26 x 40 modules for DMRE barcodes.
8973
+ * </p>
8974
+ */
8975
+ DMRE_26x40: 68,
8976
+ /**
8977
+ * <p>
8978
+ * Specifies size of 26 x 48 modules for DMRE barcodes.
8979
+ * </p>
8980
+ */
8981
+ DMRE_26x48: 69,
8982
+ /**
8983
+ * <p>
8984
+ * Specifies size of 26 x 64 modules for DMRE barcodes.
8985
+ * </p>
8986
+ */
8987
+ DMRE_26x64: 70
8988
+ }
8593
8989
 
8594
8990
  /**
8595
8991
  * <p>
@@ -8639,78 +9035,93 @@ DataMatrixVersion =
8639
9035
  * </pre></blockquote></hr></p>
8640
9036
  */
8641
9037
  AztecEncodeMode =
8642
- {
8643
- /**
8644
- * <p>
8645
- * Encode codetext with value set in the ECIEncoding property.
8646
- * </p>
8647
- */
8648
- AUTO: 0,
9038
+ {
9039
+ /**
9040
+ * In Auto mode, the CodeText is encoded with maximum data compactness.
9041
+ * Unicode characters are re-encoded in the ECIEncoding specified encoding with the insertion of an ECI identifier.
9042
+ * If a character is found that is not supported by the selected ECI encoding, an exception is thrown.
9043
+ */
9044
+ AUTO: 0,
8649
9045
 
8650
- /**
8651
- * <p>
8652
- * Encode codetext as plain bytes. If it detects any Unicode character, the character will be encoded as two bytes, lower byte first.
8653
- * </p>
8654
- */
8655
- BYTES: 1,
9046
+ /**
9047
+ * Encode codetext as plain bytes. If it detects any Unicode character, the character will be encoded as two bytes, lower byte first.
9048
+ * @deprecated
9049
+ */
9050
+ BYTES: 1,
8656
9051
 
8657
- /**
8658
- * <p>
8659
- * <p>Extended mode which supports multi ECI modes.</p>
8660
- * <p>It is better to use AztecExtCodetextBuilder for extended codetext generation.</p>
8661
- * <p>Use Display2DText property to set visible text to removing managing characters.</p>
8662
- * <p>ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier</p>
8663
- * <p>All unicode characters after ECI identifier are automatically encoded into correct character codeset.</p>
8664
- * </p>
8665
- */
8666
- EXTENDED_CODETEXT: 2
8667
- }
9052
+ /**
9053
+ * Extended mode which supports multi ECI modes.
9054
+ * It is better to use AztecExtCodetextBuilder for extended codetext generation.
9055
+ * Use Display2DText property to set visible text to removing managing characters.
9056
+ * ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier
9057
+ * All unicode characters after ECI identifier are automatically encoded into correct character codeset.
9058
+ * @deprecated
9059
+ */
9060
+ EXTENDED_CODETEXT: 2,
9061
+ /**
9062
+ * Extended mode which supports multi ECI modes.
9063
+ * It is better to use AztecExtCodetextBuilder for extended codetext generation.
9064
+ * Use Display2DText property to set visible text to removing managing characters.
9065
+ * ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier
9066
+ * All unicode characters after ECI identifier are automatically encoded into correct character codeset.
9067
+ */
9068
+ EXTENDED: 3,
9069
+
9070
+ /**
9071
+ * In Binary mode, the CodeText is encoded with maximum data compactness.
9072
+ * If a Unicode character is found, an exception is thrown.
9073
+ */
9074
+ BINARY: 4,
9075
+
9076
+ /**
9077
+ * In ECI mode, the entire message is re-encoded in the ECIEncoding specified encoding with the insertion of an ECI identifier.
9078
+ * If a character is found that is not supported by the selected ECI encoding, an exception is thrown.
9079
+ * Please note that some old (pre 2006) scanners may not support this mode.
9080
+ */
9081
+ ECI: 5
9082
+ }
8668
9083
 
8669
9084
  /**
8670
- * <p>
8671
9085
  * Version of MicroQR Code.
8672
9086
  * From M1 to M4.
8673
- * </p>
8674
9087
  * @enum
8675
9088
  */
8676
9089
  MicroQRVersion =
8677
- {
8678
- /**
8679
- * <p>
8680
- * Specifies to automatically pick up the best version for MicroQR.
8681
- * This is default value.
8682
- * </p>
8683
- */
8684
- AUTO: 0,
9090
+ {
9091
+ /**
9092
+ * Specifies to automatically pick up the best version for MicroQR.
9093
+ * This is default value.
9094
+ */
9095
+ AUTO: 0,
8685
9096
 
8686
- /**
8687
- * <p>
8688
- * Specifies version M1 for Micro QR with 11 x 11 modules.
8689
- * </p>
8690
- */
8691
- M1: 1,
9097
+ /**
9098
+ * <p>
9099
+ * Specifies version M1 for Micro QR with 11 x 11 modules.
9100
+ * </p>
9101
+ */
9102
+ M1: 1,
8692
9103
 
8693
- /**
8694
- * <p>
8695
- * Specifies version M2 for Micro QR with 13 x 13 modules.
8696
- * </p>
8697
- */
8698
- M2: 2,
9104
+ /**
9105
+ * <p>
9106
+ * Specifies version M2 for Micro QR with 13 x 13 modules.
9107
+ * </p>
9108
+ */
9109
+ M2: 2,
8699
9110
 
8700
- /**
8701
- * <p>
8702
- * Specifies version M3 for Micro QR with 15 x 15 modules.
8703
- * </p>
8704
- */
8705
- M3: 3,
9111
+ /**
9112
+ * <p>
9113
+ * Specifies version M3 for Micro QR with 15 x 15 modules.
9114
+ * </p>
9115
+ */
9116
+ M3: 3,
8706
9117
 
8707
- /**
8708
- * <p>
8709
- * Specifies version M4 for Micro QR with 17 x 17 modules.
8710
- * </p>
8711
- */
8712
- M4: 4
8713
- }
9118
+ /**
9119
+ * <p>
9120
+ * Specifies version M4 for Micro QR with 17 x 17 modules.
9121
+ * </p>
9122
+ */
9123
+ M4: 4
9124
+ }
8714
9125
 
8715
9126
  /**
8716
9127
  * <p>
@@ -8720,239 +9131,274 @@ MicroQRVersion =
8720
9131
  * @enum
8721
9132
  */
8722
9133
  RectMicroQRVersion =
8723
- {
8724
- /**
8725
- * <p>
8726
- * Specifies to automatically pick up the best version for RectMicroQR.
8727
- * This is default value.
8728
- * </p>
8729
- */
8730
- AUTO: 0,
9134
+ {
9135
+ /**
9136
+ * <p>
9137
+ * Specifies to automatically pick up the best version for RectMicroQR.
9138
+ * This is default value.
9139
+ * </p>
9140
+ */
9141
+ AUTO: 0,
8731
9142
 
8732
- /**
8733
- * <p>
8734
- * Specifies version with 7 x 43 modules.
8735
- * </p>
8736
- */
8737
- R7x43: 1,
9143
+ /**
9144
+ * <p>
9145
+ * Specifies version with 7 x 43 modules.
9146
+ * </p>
9147
+ */
9148
+ R7x43: 1,
8738
9149
 
8739
- /**
8740
- * <p>
8741
- * Specifies version with 7 x 59 modules.
8742
- * </p>
8743
- */
8744
- R7x59: 2,
9150
+ /**
9151
+ * <p>
9152
+ * Specifies version with 7 x 59 modules.
9153
+ * </p>
9154
+ */
9155
+ R7x59: 2,
8745
9156
 
8746
- /**
8747
- * <p>
8748
- * Specifies version with 7 x 77 modules.
8749
- * </p>
8750
- */
8751
- R7x77: 3,
9157
+ /**
9158
+ * <p>
9159
+ * Specifies version with 7 x 77 modules.
9160
+ * </p>
9161
+ */
9162
+ R7x77: 3,
9163
+
9164
+ /**
9165
+ * <p>
9166
+ * Specifies version with 7 x 99 modules.
9167
+ * </p>
9168
+ */
9169
+ R7x99: 4,
8752
9170
 
8753
- /**
8754
- * <p>
8755
- * Specifies version with 7 x 99 modules.
8756
- * </p>
8757
- */
8758
- R7x99: 4,
9171
+ /**
9172
+ * <p>
9173
+ * Specifies version with 7 x 139 modules.
9174
+ * </p>
9175
+ */
9176
+ R7x139: 5,
8759
9177
 
8760
- /**
8761
- * <p>
8762
- * Specifies version with 7 x 139 modules.
8763
- * </p>
8764
- */
8765
- R7x139: 5,
9178
+ /**
9179
+ * <p>
9180
+ * Specifies version with 9 x 43 modules.
9181
+ * </p>
9182
+ */
9183
+ R9x43: 6,
8766
9184
 
8767
- /**
8768
- * <p>
8769
- * Specifies version with 9 x 43 modules.
8770
- * </p>
8771
- */
8772
- R9x43: 6,
9185
+ /**
9186
+ * <p>
9187
+ * Specifies version with 9 x 59 modules.
9188
+ * </p>
9189
+ */
9190
+ R9x59: 7,
8773
9191
 
8774
- /**
8775
- * <p>
8776
- * Specifies version with 9 x 59 modules.
8777
- * </p>
8778
- */
8779
- R9x59: 7,
9192
+ /**
9193
+ * <p>
9194
+ * Specifies version with 9 x 77 modules.
9195
+ * </p>
9196
+ */
9197
+ R9x77: 8,
8780
9198
 
8781
- /**
8782
- * <p>
8783
- * Specifies version with 9 x 77 modules.
8784
- * </p>
8785
- */
8786
- R9x77: 8,
9199
+ /**
9200
+ * <p>
9201
+ * Specifies version with 9 x 99 modules.
9202
+ * </p>
9203
+ */
9204
+ R9x99: 9,
8787
9205
 
8788
- /**
8789
- * <p>
8790
- * Specifies version with 9 x 99 modules.
8791
- * </p>
8792
- */
8793
- R9x99: 9,
9206
+ /**
9207
+ * <p>
9208
+ * Specifies version with 9 x 139 modules.
9209
+ * </p>
9210
+ */
9211
+ R9x139: 10,
8794
9212
 
8795
- /**
8796
- * <p>
8797
- * Specifies version with 9 x 139 modules.
8798
- * </p>
8799
- */
8800
- R9x139: 10,
9213
+ /**
9214
+ * <p>
9215
+ * Specifies version with 11 x 27 modules.
9216
+ * </p>
9217
+ */
9218
+ R11x27: 11,
8801
9219
 
8802
- /**
8803
- * <p>
8804
- * Specifies version with 11 x 27 modules.
8805
- * </p>
8806
- */
8807
- R11x27: 11,
9220
+ /**
9221
+ * <p>
9222
+ * Specifies version with 11 x 43 modules.
9223
+ * </p>
9224
+ */
9225
+ R11x43: 12,
8808
9226
 
8809
- /**
8810
- * <p>
8811
- * Specifies version with 11 x 43 modules.
8812
- * </p>
8813
- */
8814
- R11x43: 12,
9227
+ /**
9228
+ * <p>
9229
+ * Specifies version with 11 x 59 modules.
9230
+ * </p>
9231
+ */
9232
+ R11x59: 13,
8815
9233
 
8816
- /**
8817
- * <p>
8818
- * Specifies version with 11 x 59 modules.
8819
- * </p>
8820
- */
8821
- R11x59: 13,
9234
+ /**
9235
+ * <p>
9236
+ * Specifies version with 11 x 77 modules.
9237
+ * </p>
9238
+ */
9239
+ R11x77: 14,
8822
9240
 
8823
- /**
8824
- * <p>
8825
- * Specifies version with 11 x 77 modules.
8826
- * </p>
8827
- */
8828
- R11x77: 14,
9241
+ /**
9242
+ * <p>
9243
+ * Specifies version with 11 x 99 modules.
9244
+ * </p>
9245
+ */
9246
+ R11x99: 15,
8829
9247
 
8830
- /**
8831
- * <p>
8832
- * Specifies version with 11 x 99 modules.
8833
- * </p>
8834
- */
8835
- R11x99: 15,
9248
+ /**
9249
+ * <p>
9250
+ * Specifies version with 11 x 139 modules.
9251
+ * </p>
9252
+ */
9253
+ R11x139: 16,
8836
9254
 
8837
- /**
8838
- * <p>
8839
- * Specifies version with 11 x 139 modules.
8840
- * </p>
8841
- */
8842
- R11x139: 16,
9255
+ /**
9256
+ * <p>
9257
+ * Specifies version with 13 x 27 modules.
9258
+ * </p>
9259
+ */
9260
+ R13x27: 17,
8843
9261
 
8844
- /**
8845
- * <p>
8846
- * Specifies version with 13 x 27 modules.
8847
- * </p>
8848
- */
8849
- R13x27: 17,
9262
+ /**
9263
+ * <p>
9264
+ * Specifies version with 13 x 43 modules.
9265
+ * </p>
9266
+ */
9267
+ R13x43: 18,
8850
9268
 
8851
- /**
8852
- * <p>
8853
- * Specifies version with 13 x 43 modules.
8854
- * </p>
8855
- */
8856
- R13x43: 18,
9269
+ /**
9270
+ * <p>
9271
+ * Specifies version with 13 x 59 modules.
9272
+ * </p>
9273
+ */
9274
+ R13x59: 19,
8857
9275
 
8858
- /**
8859
- * <p>
8860
- * Specifies version with 13 x 59 modules.
8861
- * </p>
8862
- */
8863
- R13x59: 19,
9276
+ /**
9277
+ * <p>
9278
+ * Specifies version with 13 x 77 modules.
9279
+ * </p>
9280
+ */
9281
+ R13x77: 20,
8864
9282
 
8865
- /**
8866
- * <p>
8867
- * Specifies version with 13 x 77 modules.
8868
- * </p>
8869
- */
8870
- R13x77: 20,
9283
+ /**
9284
+ * <p>
9285
+ * Specifies version with 13 x 99 modules.
9286
+ * </p>
9287
+ */
9288
+ R13x99: 21,
8871
9289
 
8872
- /**
8873
- * <p>
8874
- * Specifies version with 13 x 99 modules.
8875
- * </p>
8876
- */
8877
- R13x99: 21,
9290
+ /**
9291
+ * <p>
9292
+ * Specifies version with 13 x 139 modules.
9293
+ * </p>
9294
+ */
9295
+ R13x139: 22,
8878
9296
 
8879
- /**
8880
- * <p>
8881
- * Specifies version with 13 x 139 modules.
8882
- * </p>
8883
- */
8884
- R13x139: 22,
9297
+ /**
9298
+ * <p>
9299
+ * Specifies version with 15 x 43 modules.
9300
+ * </p>
9301
+ */
9302
+ R15x43: 23,
8885
9303
 
8886
- /**
8887
- * <p>
8888
- * Specifies version with 15 x 43 modules.
8889
- * </p>
8890
- */
8891
- R15x43: 23,
9304
+ /**
9305
+ * <p>
9306
+ * Specifies version with 15 x 59 modules.
9307
+ * </p>
9308
+ */
9309
+ R15x59: 24,
8892
9310
 
8893
- /**
8894
- * <p>
8895
- * Specifies version with 15 x 59 modules.
8896
- * </p>
8897
- */
8898
- R15x59: 24,
9311
+ /**
9312
+ * <p>
9313
+ * Specifies version with 15 x 77 modules.
9314
+ * </p>
9315
+ */
9316
+ R15x77: 25,
8899
9317
 
8900
- /**
8901
- * <p>
8902
- * Specifies version with 15 x 77 modules.
8903
- * </p>
8904
- */
8905
- R15x77: 25,
9318
+ /**
9319
+ * <p>
9320
+ * Specifies version with 15 x 99 modules.
9321
+ * </p>
9322
+ */
9323
+ R15x99: 26,
8906
9324
 
8907
- /**
8908
- * <p>
8909
- * Specifies version with 15 x 99 modules.
8910
- * </p>
8911
- */
8912
- R15x99: 26,
9325
+ /**
9326
+ * <p>
9327
+ * Specifies version with 15 x 139 modules.
9328
+ * </p>
9329
+ */
9330
+ R15x139: 27,
8913
9331
 
8914
- /**
8915
- * <p>
8916
- * Specifies version with 15 x 139 modules.
8917
- * </p>
8918
- */
8919
- R15x139: 27,
9332
+ /**
9333
+ * <p>
9334
+ * Specifies version with 17 x 43 modules.
9335
+ * </p>
9336
+ */
9337
+ R17x43: 28,
8920
9338
 
8921
- /**
8922
- * <p>
8923
- * Specifies version with 17 x 43 modules.
8924
- * </p>
8925
- */
8926
- R17x43: 28,
9339
+ /**
9340
+ * <p>
9341
+ * Specifies version with 17 x 59 modules.
9342
+ * </p>
9343
+ */
9344
+ R17x59: 29,
8927
9345
 
8928
- /**
8929
- * <p>
8930
- * Specifies version with 17 x 59 modules.
8931
- * </p>
8932
- */
8933
- R17x59: 29,
9346
+ /**
9347
+ * <p>
9348
+ * Specifies version with 17 x 77 modules.
9349
+ * </p>
9350
+ */
9351
+ R17x77: 30,
8934
9352
 
8935
- /**
8936
- * <p>
8937
- * Specifies version with 17 x 77 modules.
8938
- * </p>
8939
- */
8940
- R17x77: 30,
9353
+ /**
9354
+ * <p>
9355
+ * Specifies version with 17 x 99 modules.
9356
+ * </p>
9357
+ */
9358
+ R17x99: 31,
8941
9359
 
8942
- /**
8943
- * <p>
8944
- * Specifies version with 17 x 99 modules.
8945
- * </p>
8946
- */
8947
- R17x99: 31,
9360
+ /**
9361
+ * <p>
9362
+ * Specifies version with 17 x 139 modules.
9363
+ * </p>
9364
+ */
9365
+ R17x139: 32
9366
+ }
8948
9367
 
8949
- /**
8950
- * <p>
8951
- * Specifies version with 17 x 139 modules.
8952
- * </p>
8953
- */
8954
- R17x139: 32
8955
- }
9368
+ /**
9369
+ * <p>
9370
+ * Possible modes for filling color in svg file, RGB is default and supported by SVG 1.1.
9371
+ * RGBA, HSL, HSLA is allowed in SVG 2.0 standard.
9372
+ * Even in RGB opacity will be set through "fill-opacity" parameter
9373
+ * </p>
9374
+ */
9375
+ SvgColorMode =
9376
+ {
9377
+ /**
9378
+ * <p>
9379
+ * RGB mode, example: fill="#ff5511" fill-opacity="0.73". Default mode.
9380
+ * </p>
9381
+ */
9382
+ RGB: 0,
9383
+ /**
9384
+ * <p>
9385
+ * RGBA mode, example: fill="rgba(255, 85, 17, 0.73)"
9386
+ * </p>
9387
+ */
9388
+ RGBA: 1,
9389
+ /**
9390
+ * <p>
9391
+ * HSL mode, example: fill="hsl(17, 100%, 53%)" fill-opacity="0.73"
9392
+ * </p>
9393
+ */
9394
+ HSL: 2,
9395
+ /**
9396
+ * <p>
9397
+ * HSLA mode, example: fill="hsla(30, 50%, 70%, 0.8)"
9398
+ * </p>
9399
+ */
9400
+ HSLA: 3
9401
+ }
8956
9402
 
8957
9403
  module.exports = {
8958
9404
  BarcodeGenerator,
@@ -9029,5 +9475,7 @@ module.exports = {
9029
9475
  MicroQRVersion,
9030
9476
  RectMicroQRVersion,
9031
9477
  ImageParameters,
9032
- SvgParameters
9478
+ SvgParameters,
9479
+ HslaColor,
9480
+ SvgColorMode
9033
9481
  };