aspose.barcode 23.6.0 → 23.8.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.
@@ -186,24 +186,6 @@ class BarCodeReaderExamples
186
186
 
187
187
  }
188
188
 
189
- howToDetectEncodingEnabled()
190
- {
191
- console.log("\n---\nfunction '" + this.howToDetectEncodingEnabled.name + "'\n");
192
- let gen = new BarcodeGenerator(EncodeTypes.QR, null);
193
- gen.setCodeText("Слово");
194
- gen.getParameters().getBarcode().getQR().setCodeTextEncoding("UTF-8");
195
- let image = gen.generateBarCodeImage(aspose_barcode.BarCodeImageFormat.PNG);
196
-
197
- let reader = new BarCodeReader((image), null, DecodeType.QR);
198
- reader.setDetectEncoding(true);
199
- reader.readBarCodes().forEach(function (result, i, results)
200
- {
201
- console.log("CodeText : " + result.getCodeText());
202
-
203
- console.log("CodeType : " + result.getCodeTypeName());
204
- });
205
- }
206
-
207
189
  howToCustomerInformationInterpretingType1()
208
190
  {
209
191
  console.log("\n---\nfunction '" + this.howToCustomerInformationInterpretingType1.name + "'\n");
@@ -215,7 +197,7 @@ class BarCodeReaderExamples
215
197
  generator.getParameters().getImageHeight().setPixels(150);
216
198
  let image = generator.generateBarCodeImage(aspose_barcode.BarCodeImageFormat.PNG);
217
199
  let reader = new BarCodeReader(image, null, DecodeType.AUSTRALIA_POST);
218
- reader.setCustomerInformationInterpretingType(CustomerInformationInterpretingType.N_TABLE);
200
+ reader.getBarcodeSettings().getAustraliaPost().setCustomerInformationInterpretingType(CustomerInformationInterpretingType.N_TABLE);
219
201
  reader.readBarCodes().forEach(function (result, i, results)
220
202
  {
221
203
  console.log("CodeText : " + result.getCodeText());
@@ -234,7 +216,7 @@ class BarCodeReaderExamples
234
216
  generator.getParameters().getImageHeight().setPixels(150);
235
217
  let image = generator.generateBarCodeImage(aspose_barcode.BarCodeImageFormat.PNG);
236
218
  let reader = new BarCodeReader(image, null, DecodeType.AUSTRALIA_POST);
237
- reader.setCustomerInformationInterpretingType(CustomerInformationInterpretingType.C_TABLE);
219
+ reader.getBarcodeSettings().getAustraliaPost().setCustomerInformationInterpretingType(CustomerInformationInterpretingType.C_TABLE);
238
220
  reader.readBarCodes().forEach(function (result, i, results)
239
221
  {
240
222
  console.log("CodeText : " + result.getCodeText());
@@ -255,6 +237,5 @@ barCodeReaderExamples.howToRecognitionCodeAllSupportedTypes();
255
237
  barCodeReaderExamples.howToRecognitionCodeAllSupportedTypes2();
256
238
  barCodeReaderExamples.howToRecognitionSetBarCodeImage();
257
239
  barCodeReaderExamples.howToMacroPdf417();
258
- barCodeReaderExamples.howToDetectEncodingEnabled();
259
240
  barCodeReaderExamples.howToCustomerInformationInterpretingType1();
260
241
  barCodeReaderExamples.howToCustomerInformationInterpretingType2();
@@ -4,7 +4,7 @@ const joint_ = require('./Joint');
4
4
  const complexbarcode_ = require("./ComplexBarcode");
5
5
  const generation_ = require("./Generation");
6
6
  const recognition_ = require("./Recognition");
7
- const jar_name_ = "/aspose-barcode-nodejs-23.6.jar";
7
+ const jar_name_ = "/aspose-barcode-nodejs-23.8.jar";
8
8
  const jar_path_ = __dirname + jar_name_;
9
9
  const fs = require("fs");
10
10
 
@@ -577,6 +577,8 @@ class ComplexCodetextReader {
577
577
  let javaHIBCLICCombinedCodetextClass = java.import(HIBCLICCombinedCodetext.JAVA_CLASS_NAME);
578
578
  let javaNodeJsComplexCodetextReaderJavaClass = java.import(ComplexCodetextReader.javaClassName);
579
579
  let hibclicComplexCodetext = javaNodeJsComplexCodetextReaderJavaClass.tryDecodeHIBCLICSync(encodedCodetext);
580
+ if(hibclicComplexCodetext == null)
581
+ return null;
580
582
  if(hibclicComplexCodetext.getClassSync().equalsSync(javaHIBCLICSecondaryAndAdditionalDataCodetextClass.class))
581
583
  {
582
584
  return HIBCLICSecondaryAndAdditionalDataCodetext.construct(hibclicComplexCodetext);
@@ -2799,10 +2801,10 @@ class HIBCPASCodetext extends IComplexCodetext
2799
2801
  {
2800
2802
  let _array = [];
2801
2803
  let mwRecordsList = this.getJavaClass().getRecordsSync();
2802
- let listSize = mwRecordsList.length;
2804
+ let listSize = mwRecordsList.sizeSync();
2803
2805
  for (let i = 0; i < listSize; i++)
2804
2806
  {
2805
- let mwhibcpasRecord = mwRecordsList.get(i);
2807
+ let mwhibcpasRecord = mwRecordsList.getSync(i);
2806
2808
  _array.push(HIBCPASRecord.construct(mwhibcpasRecord));
2807
2809
  }
2808
2810
  return _array;
@@ -2929,7 +2931,7 @@ class HIBCPASRecord extends joint.BaseJavaClass
2929
2931
  */
2930
2932
  static construct(javaClass)
2931
2933
  {
2932
- let obj = new HIBCPASRecord(0,0);
2934
+ let obj = new HIBCPASRecord(0,"");
2933
2935
  obj.setJavaClass(javaClass);
2934
2936
  return obj;
2935
2937
  }
package/lib/Generation.js CHANGED
@@ -1902,6 +1902,28 @@ class DataMatrixParameters extends joint.BaseJavaClass
1902
1902
  {
1903
1903
  }
1904
1904
 
1905
+ /**
1906
+ * <p>
1907
+ * Gets or sets a Datamatrix symbol size.
1908
+ * Default value: DataMatrixVersion.Auto.
1909
+ * </p>
1910
+ */
1911
+ getDataMatrixVersion()
1912
+ {
1913
+ return this.getJavaClass().getDataMatrixVersionSync();
1914
+ }
1915
+
1916
+ /**
1917
+ * <p>
1918
+ * Gets or sets a Datamatrix symbol size.
1919
+ * Default value: DataMatrixVersion.Auto.
1920
+ * </p>
1921
+ */
1922
+ setDataMatrixVersion(value)
1923
+ {
1924
+ this.getJavaClass().setDataMatrixVersionSync(value);
1925
+ }
1926
+
1905
1927
  /**
1906
1928
  * Gets a Datamatrix ECC type.<br>
1907
1929
  * Default value: DataMatrixEccType.ECC_200.
@@ -1938,6 +1960,92 @@ class DataMatrixParameters extends joint.BaseJavaClass
1938
1960
  this.getJavaClass().setDataMatrixEncodeModeSync(value);
1939
1961
  }
1940
1962
 
1963
+ /**
1964
+ * <p>
1965
+ * Barcode ID for Structured Append mode of Datamatrix barcode.
1966
+ * Default value: 0
1967
+ * </p>
1968
+ */
1969
+ getStructuredAppendBarcodeId()
1970
+ {
1971
+ return this.getJavaClass().getStructuredAppendBarcodeIdSync();
1972
+ }
1973
+ /**
1974
+ * <p>
1975
+ * Barcode ID for Structured Append mode of Datamatrix barcode.
1976
+ * Default value: 0
1977
+ * </p>
1978
+ */
1979
+ setStructuredAppendBarcodeId(value)
1980
+ {
1981
+ this.getJavaClass().setStructuredAppendBarcodeIdSync(value);
1982
+ }
1983
+
1984
+ /**
1985
+ * <p>
1986
+ * Barcodes count for Structured Append mode of Datamatrix barcode.
1987
+ * Default value: 0
1988
+ * </p>
1989
+ */
1990
+ getStructuredAppendBarcodesCount()
1991
+ {
1992
+ return this.getJavaClass().getStructuredAppendBarcodesCountSync();
1993
+ }
1994
+ /**
1995
+ * <p>
1996
+ * Barcodes count for Structured Append mode of Datamatrix barcode.
1997
+ * Default value: 0
1998
+ * </p>
1999
+ */
2000
+ setStructuredAppendBarcodesCount(value)
2001
+ {
2002
+ this.getJavaClass().setStructuredAppendBarcodesCountSync(value);
2003
+ }
2004
+
2005
+ /**
2006
+ * <p>
2007
+ * File ID for Structured Append mode of Datamatrix barcode.
2008
+ * Default value: 0
2009
+ * </p>
2010
+ */
2011
+ getStructuredAppendFileId()
2012
+ {
2013
+ return this.getJavaClass().getStructuredAppendFileIdSync();
2014
+ }
2015
+ /**
2016
+ * <p>
2017
+ * File ID for Structured Append mode of Datamatrix barcode.
2018
+ * Default value: 0
2019
+ * </p>
2020
+ */
2021
+ setStructuredAppendFileId(value)
2022
+ {
2023
+ this.getJavaClass().setStructuredAppendFileIdSync(value);
2024
+ }
2025
+
2026
+ /**
2027
+ * <p>
2028
+ * Used to instruct the reader to interpret the data contained within the symbol
2029
+ * as programming for reader initialization.
2030
+ * Default value: false
2031
+ * </p>
2032
+ */
2033
+ isReaderProgramming()
2034
+ {
2035
+ return this.getJavaClass().isReaderProgrammingSync();
2036
+ }
2037
+ /**
2038
+ * <p>
2039
+ * Used to instruct the reader to interpret the data contained within the symbol
2040
+ * as programming for reader initialization.
2041
+ * Default value: false
2042
+ * </p>
2043
+ */
2044
+ setReaderProgramming(value)
2045
+ {
2046
+ this.getJavaClass().setReaderProgrammingSync(value);
2047
+ }
2048
+
1941
2049
  /**
1942
2050
  * ISO/IEC 16022<br>
1943
2051
  * 5.2.4.7 Macro characters<br>
@@ -2032,6 +2140,27 @@ class DataMatrixParameters extends joint.BaseJavaClass
2032
2140
  this.getJavaClass().setCodeTextEncodingSync(value);
2033
2141
  }
2034
2142
 
2143
+ /**
2144
+ * <p>
2145
+ * Gets or sets ECI encoding. Used when DataMatrixEncodeMode is Auto.
2146
+ * Default value: ISO-8859-1
2147
+ * </p>
2148
+ */
2149
+ getECIEncoding()
2150
+ {
2151
+ return this.getJavaClass().getECIEncodingSync();
2152
+ }
2153
+ /**
2154
+ * <p>
2155
+ * Gets or sets ECI encoding. Used when DataMatrixEncodeMode is Auto.
2156
+ * Default value: ISO-8859-1
2157
+ * </p>
2158
+ */
2159
+ setECIEncoding(value)
2160
+ {
2161
+ this.getJavaClass().setECIEncodingSync(value);
2162
+ }
2163
+
2035
2164
  /**
2036
2165
  * Returns a human-readable string representation of this DataMatrixParameters.<br>
2037
2166
  * @return presentation of this DataMatrixParameters.
@@ -2280,7 +2409,9 @@ class DotCodeParameters extends joint.BaseJavaClass
2280
2409
  * </p>
2281
2410
  */
2282
2411
  setECIEncoding(value)
2283
- { this.getJavaClass().setECIEncodingSync(value); }
2412
+ {
2413
+ this.getJavaClass().setECIEncodingSync(value);
2414
+ }
2284
2415
 
2285
2416
  /**
2286
2417
  * <p>
@@ -4087,89 +4218,364 @@ class HanXinParameters extends joint.BaseJavaClass
4087
4218
  }
4088
4219
 
4089
4220
  /**
4090
- * Enable checksum validation during recognition for 1D barcodes.<br>
4091
- * Default is treated as Yes for symbologies which must contain checksum, as No where checksum only possible.<br>
4092
- * Checksum never used: Codabar<br>
4093
- * Checksum is possible: Code39 Standard/Extended, Standard2of5, Interleaved2of5, Matrix2of5, ItalianPost25, DeutschePostIdentcode, DeutschePostLeitcode, VIN<br>
4094
- * Checksum always used: Rest symbologies
4095
- * @example
4096
- * //This sample shows influence of ChecksumValidation on recognition quality and results
4097
- * let generator = new BarcodeGenerator(EncodeTypes.EAN_13, "1234567890128");
4098
- * generator.save("test.png", BarcodeImageFormat.PNG);
4099
- * let reader = new BarCodeReader("test.png", DecodeType.EAN_13);
4100
- * //checksum disabled
4101
- * reader.setChecksumValidation(ChecksumValidation.OFF);
4102
- * reader.readBarCodes().forEach(function(result, i, results)
4103
- * {
4104
- * console.log("BarCode CodeText: " + result.getCodeText());
4105
- * console.log("BarCode Value: " + result.getExtended().getOneD().getValue());
4106
- * console.log("BarCode Checksum: " + result.getExtended().getOneD().getCheckSum());
4107
- * });
4108
- * let reader = new BarCodeReader("test.png", DecodeType.EAN_13);
4109
- * //checksum enabled
4110
- * reader.setChecksumValidation(ChecksumValidation.ON);
4111
- * reader.readBarCodes().forEach(function(result, i, results)
4112
- * {
4113
- * console.log("BarCode CodeText: " + result.getCodeText());
4114
- * console.log("BarCode Value: " + result.getExtended().getOneD().getValue());
4115
- * console.log("BarCode Checksum: " + result.getExtended().getOneD().getCheckSum());
4116
- * });
4117
- * @enum
4221
+ * <p>
4222
+ * <p>Extended codetext generator for 2D DataMatrix barcodes for ExtendedCodetext Mode of DataMatrixEncodeMode</p>
4223
+ * </p><p><hr><blockquote><pre>
4224
+ * <pre>
4225
+ * //Extended codetext mode
4226
+ * //create codetext
4227
+ * let textBuilder = new DataMatrixExtCodetextBuilder();
4228
+ * codetextBuilder.addECICodetextWithEncodeMode(ECIEncodings.Win1251, DataMatrixEncodeMode.BYTES, "World");
4229
+ * codetextBuilder.addPlainCodetext("Will");
4230
+ * codetextBuilder.addECICodetext(ECIEncodings.UTF_8, "犬Right狗");
4231
+ * codetextBuilder.addCodetextWithEncodeMode(DataMatrixEncodeMode.C_40, "ABCDE");
4232
+ * //generate codetext
4233
+ * let codetext = textBuilder.getExtendedCodetext();
4234
+ * //generate
4235
+ * let generator = new BarcodeGenerator(EncodeTypes.DATA_MATRIX, null, codetext);
4236
+ * generator.getParameters().getBarcode().getDataMatrix().setDataMatrixEncodeMode(DataMatrixEncodeMode.EXTENDED_CODETEXT);
4237
+ * generator.save("test.bmp", BarcodeImageFormat.BMP);
4238
+ * </pre>
4239
+ * </pre>
4240
+ * </pre></blockquote></hr></p>
4118
4241
  */
4119
- ChecksumValidation =
4242
+ class DataMatrixExtCodetextBuilder extends ExtCodetextBuilder
4243
+ {
4244
+ static JAVA_CLASS_NAME = "com.aspose.mw.barcode.generation.MwDataMatrixExtCodetextBuilder";
4245
+
4246
+ constructor()
4120
4247
  {
4121
- /**
4122
- * If checksum is required by the specification - it will be validated.
4123
- */
4124
- DEFAULT: 0,
4248
+ let java_class_link = java.import(DataMatrixExtCodetextBuilder.JAVA_CLASS_NAME);
4249
+ let javaClass = new java_class_link();
4250
+ super(javaClass);
4251
+ }
4125
4252
 
4126
- /**
4127
- * Always validate checksum if possible.
4128
- */
4129
- ON: 1,
4253
+ static construct(javaClass)
4254
+ {
4255
+ let obj = new DataMatrixExtCodetextBuilder();
4256
+ obj.setJavaClass(javaClass);
4257
+ return obj;
4258
+ }
4130
4259
 
4131
- /**
4132
- * Do not validate checksum.
4133
- */
4134
- OFF: 2
4135
- };
4260
+ init()
4261
+ {
4262
+ }
4263
+ /**
4264
+ * <p>
4265
+ * Adds codetext with Extended Channel Identifier with defined encode mode
4266
+ * </p>
4267
+ * @param ECIEncoding Extended Channel Identifier
4268
+ * @param encodeMode Encode mode value
4269
+ * @param codetext Codetext in unicode to add as extended codetext item with Extended Channel Identifier with defined encode mode
4270
+ */
4271
+ addECICodetextWithEncodeMode(ECIEncoding, encodeMode, codetext)
4272
+ {
4273
+ this.getJavaClass().addECICodetextWithEncodeModeSync(ECIEncoding, encodeMode, codetext);
4274
+ }
4275
+
4276
+ /**
4277
+ * <p>
4278
+ * Adds codetext with defined encode mode to the extended codetext items
4279
+ * </p>
4280
+ * @param encodeMode Encode mode value
4281
+ * @param codetext Codetext in unicode to add as extended codetext item
4282
+ */
4283
+ addCodetextWithEncodeMode(encodeMode, codetext)
4284
+ {
4285
+ this.getJavaClass().addCodetextWithEncodeModeSync(encodeMode, codetext);
4286
+ }
4287
+
4288
+ /**
4289
+ * <p>
4290
+ * Generates Extended codetext from the extended codetext list.
4291
+ * </p>
4292
+ * @return Extended codetext as string
4293
+ */
4294
+ getExtendedCodetext()
4295
+ {
4296
+ return this.getJavaClass().getExtendedCodetextSync();
4297
+ }
4298
+ }
4136
4299
 
4137
4300
  /**
4138
- * BarcodeClassifications EncodeTypes classification
4139
- * @enum
4301
+ * <p>
4302
+ * <p>Extended codetext generator for Han Xin Code for Extended Mode of HanXinEncodeMode</p>
4303
+ * </p><p><hr><blockquote><pre>
4304
+ * <pre>
4305
+ *
4306
+ * //Extended codetext mode
4307
+ * //create codetext
4308
+ * let codeTextBuilder = new HanXinExtCodetextBuilder();
4309
+ * codeTextBuilder.addGB18030TwoByte("漄");
4310
+ * codeTextBuilder.addGB18030FourByte("㐁");
4311
+ * codeTextBuilder.addCommonChineseRegionOne("全");
4312
+ * codeTextBuilder.addCommonChineseRegionTwo("螅");
4313
+ * codeTextBuilder.addNumeric("123");
4314
+ * codeTextBuilder.addText("qwe");
4315
+ * codeTextBuilder.addUnicode("ıntəˈnæʃənəl");
4316
+ * codeTextBuilder.addECI("ΑΒΓΔΕ", 9);
4317
+ * codeTextBuilder.addAuto("abc");
4318
+ * codeTextBuilder.addBinary("abc");
4319
+ * codeTextBuilder.addURI("backslashes_should_be_doubled\000555:test");
4320
+ * codeTextBuilder.addGS1("(01)03453120000011(17)191125(10)ABCD1234(21)10");
4321
+ * let expectedStr = "漄㐁全螅123qweıntəˈnæʃənəlΑΒΓΔΕabcabcbackslashes_should_be_doubled\000555:test(01)03453120000011(17)191125(10)ABCD1234(21)10";
4322
+ * //generate codetext
4323
+ * let str = codeTextBuilder.getExtendedCodetext();
4324
+ * //generate
4325
+ * let bg = new BarcodeGenerator(EncodeTypes.HAN_XIN, str);
4326
+ * bg.getParameters().getBarcode().getHanXin().setHanXinEncodeMode(HanXinEncodeMode.EXTENDED);
4327
+ * let img = bg.generateBarCodeImage(BarcodeImageFormat.PNG);
4328
+ * let r = new BarCodeReader(img, null, DecodeType.HAN_XIN))
4329
+ * let found = r.readBarCodes();
4330
+ * assert.assertEquals(1, found.length);
4331
+ * assert.assertEquals(expectedStr, found[0].getCodeText());
4332
+ * </pre>
4333
+ * </pre></blockquote></hr></p>
4140
4334
  */
4141
- BarcodeClassifications =
4335
+ class HanXinExtCodetextBuilder extends joint.BaseJavaClass
4336
+ {
4337
+ static JAVA_CLASS_NAME = "com.aspose.mw.barcode.generation.MwHanXinExtCodetextBuilder";
4338
+
4339
+ constructor()
4142
4340
  {
4143
- /**
4144
- * Unspecified classification
4145
- */
4146
- NONE: 0,
4341
+ let java_class_link = java.import(HanXinExtCodetextBuilder.JAVA_CLASS_NAME);
4342
+ let javaClass = new java_class_link();
4343
+ super(javaClass);
4344
+ }
4147
4345
 
4148
- /**
4149
- * Specifies 1D-barcode
4150
- */
4151
- TYPE_1D: 1,
4346
+ init()
4347
+ {
4348
+ }
4152
4349
 
4153
- /**
4154
- * Specifies 2D-barcode
4155
- */
4156
- TYPE_2D: 2,
4350
+ /**
4351
+ * <p>
4352
+ * Adds codetext fragment in ECI mode
4353
+ * </p>
4354
+ * @param text Codetext string
4355
+ * @param encoding ECI encoding in number format
4356
+ */
4357
+ addECI(text, encoding)
4358
+ {
4359
+ this.getJavaClass().addECISync(text, encoding);
4360
+ }
4157
4361
 
4158
- /**
4159
- * Specifies POSTAL-barcode
4160
- */
4161
- POSTAL: 3,
4362
+ /**
4363
+ * <p>
4364
+ * Adds codetext fragment in Auto mode
4365
+ * </p>
4366
+ * @param text Codetext string
4367
+ */
4368
+ addAuto(text)
4369
+ {
4370
+ this.getJavaClass().addAutoSync(text);
4371
+ }
4162
4372
 
4163
- /**
4164
- * Specifies DataBar-barcode
4165
- */
4166
- DATABAR: 4,
4373
+ /**
4374
+ * <p>
4375
+ * Adds codetext fragment in Binary mode
4376
+ * </p>
4377
+ * @param text Codetext string
4378
+ */
4379
+ addBinary(text)
4380
+ {
4381
+ this.getJavaClass().addBinarySync(text);
4382
+ }
4167
4383
 
4168
- /**
4169
- * Specifies COUPON-barcode
4170
- */
4171
- COUPON: 5
4172
- };
4384
+ /**
4385
+ * <p>
4386
+ * Adds codetext fragment in URI mode
4387
+ * </p>
4388
+ * @param text Codetext string
4389
+ */
4390
+ addURI(text)
4391
+ {
4392
+ this.getJavaClass().addURISync(text);
4393
+ }
4394
+
4395
+ /**
4396
+ * <p>
4397
+ * Adds codetext fragment in Text mode
4398
+ * </p>
4399
+ * @param text Codetext string
4400
+ */
4401
+ addText(text)
4402
+ {
4403
+ this.getJavaClass().addTextSync(text);
4404
+ }
4405
+
4406
+ /**
4407
+ * <p>
4408
+ * Adds codetext fragment in Numeric mode
4409
+ * </p>
4410
+ * @param text Codetext string
4411
+ */
4412
+ addNumeric(text)
4413
+ {
4414
+ this.getJavaClass().addNumericSync(text);
4415
+ }
4416
+
4417
+ /**
4418
+ * <p>
4419
+ * Adds codetext fragment in Unicode mode
4420
+ * </p>
4421
+ * @param text Codetext string
4422
+ */
4423
+ addUnicode(text)
4424
+ {
4425
+ this.getJavaClass().addUnicodeSync(text);
4426
+ }
4427
+
4428
+ /**
4429
+ * <p>
4430
+ * Adds codetext fragment in Common Chinese Region One mode
4431
+ * </p>
4432
+ * @param text Codetext string
4433
+ */
4434
+ addCommonChineseRegionOne(text)
4435
+ {
4436
+ this.getJavaClass().addCommonChineseRegionOneSync(text);
4437
+ }
4438
+
4439
+ /**
4440
+ * <p>
4441
+ * Adds codetext fragment in Common Chinese Region Two mode
4442
+ * </p>
4443
+ * @param text Codetext string
4444
+ */
4445
+ addCommonChineseRegionTwo(text)
4446
+ {
4447
+ this.getJavaClass().addCommonChineseRegionTwoSync(text);
4448
+ }
4449
+
4450
+ /**
4451
+ * <p>
4452
+ * Adds codetext fragment in GB18030 Two Byte mode
4453
+ * </p>
4454
+ * @param text Codetext string
4455
+ */
4456
+ addGB18030TwoByte(text)
4457
+ {
4458
+ this.getJavaClass().addGB18030TwoByteSync(text);
4459
+ }
4460
+
4461
+ /**
4462
+ * <p>
4463
+ * Adds codetext fragment in GB18030 Four Byte mode
4464
+ * </p>
4465
+ * @param text Codetext string
4466
+ */
4467
+ addGB18030FourByte(text)
4468
+ {
4469
+ this.getJavaClass().addGB18030FourByteSync(text);
4470
+ }
4471
+
4472
+ /**
4473
+ * <p>
4474
+ * Adds codetext fragment in GS1 mode
4475
+ * </p>
4476
+ * @param text Codetext string
4477
+ */
4478
+ addGS1(text)
4479
+ {
4480
+ this.getJavaClass().addGS1Sync(text);
4481
+ }
4482
+
4483
+ /**
4484
+ * <p>
4485
+ * Returns codetext from Extended mode codetext builder
4486
+ * </p>
4487
+ * @return Codetext in Extended mode
4488
+ */
4489
+ getExtendedCodetext()
4490
+ {
4491
+ return this.getJavaClass().getExtendedCodetextSync();
4492
+ }
4493
+ }
4494
+
4495
+ /**
4496
+ * Enable checksum validation during recognition for 1D barcodes.<br>
4497
+ * Default is treated as Yes for symbologies which must contain checksum, as No where checksum only possible.<br>
4498
+ * Checksum never used: Codabar<br>
4499
+ * Checksum is possible: Code39 Standard/Extended, Standard2of5, Interleaved2of5, Matrix2of5, ItalianPost25, DeutschePostIdentcode, DeutschePostLeitcode, VIN<br>
4500
+ * Checksum always used: Rest symbologies
4501
+ * @example
4502
+ * //This sample shows influence of ChecksumValidation on recognition quality and results
4503
+ * let generator = new BarcodeGenerator(EncodeTypes.EAN_13, "1234567890128");
4504
+ * generator.save("test.png", BarcodeImageFormat.PNG);
4505
+ * let reader = new BarCodeReader("test.png", DecodeType.EAN_13);
4506
+ * //checksum disabled
4507
+ * reader.setChecksumValidation(ChecksumValidation.OFF);
4508
+ * reader.readBarCodes().forEach(function(result, i, results)
4509
+ * {
4510
+ * console.log("BarCode CodeText: " + result.getCodeText());
4511
+ * console.log("BarCode Value: " + result.getExtended().getOneD().getValue());
4512
+ * console.log("BarCode Checksum: " + result.getExtended().getOneD().getCheckSum());
4513
+ * });
4514
+ * let reader = new BarCodeReader("test.png", DecodeType.EAN_13);
4515
+ * //checksum enabled
4516
+ * reader.setChecksumValidation(ChecksumValidation.ON);
4517
+ * reader.readBarCodes().forEach(function(result, i, results)
4518
+ * {
4519
+ * console.log("BarCode CodeText: " + result.getCodeText());
4520
+ * console.log("BarCode Value: " + result.getExtended().getOneD().getValue());
4521
+ * console.log("BarCode Checksum: " + result.getExtended().getOneD().getCheckSum());
4522
+ * });
4523
+ * @enum
4524
+ */
4525
+ ChecksumValidation =
4526
+ {
4527
+ /**
4528
+ * If checksum is required by the specification - it will be validated.
4529
+ */
4530
+ DEFAULT: 0,
4531
+
4532
+ /**
4533
+ * Always validate checksum if possible.
4534
+ */
4535
+ ON: 1,
4536
+
4537
+ /**
4538
+ * Do not validate checksum.
4539
+ */
4540
+ OFF: 2
4541
+ };
4542
+
4543
+ /**
4544
+ * BarcodeClassifications EncodeTypes classification
4545
+ * @enum
4546
+ */
4547
+ BarcodeClassifications =
4548
+ {
4549
+ /**
4550
+ * Unspecified classification
4551
+ */
4552
+ NONE: 0,
4553
+
4554
+ /**
4555
+ * Specifies 1D-barcode
4556
+ */
4557
+ TYPE_1D: 1,
4558
+
4559
+ /**
4560
+ * Specifies 2D-barcode
4561
+ */
4562
+ TYPE_2D: 2,
4563
+
4564
+ /**
4565
+ * Specifies POSTAL-barcode
4566
+ */
4567
+ POSTAL: 3,
4568
+
4569
+ /**
4570
+ * Specifies DataBar-barcode
4571
+ */
4572
+ DATABAR: 4,
4573
+
4574
+ /**
4575
+ * Specifies COUPON-barcode
4576
+ */
4577
+ COUPON: 5
4578
+ };
4173
4579
 
4174
4580
  /**
4175
4581
  * FontStyle classification
@@ -4230,24 +4636,20 @@ CodabarSymbol =
4230
4636
  */
4231
4637
  DataMatrixEncodeMode =
4232
4638
  {
4233
-
4234
4639
  /**
4235
4640
  * Automatically pick up the best encode mode for datamatrix encoding
4236
4641
  */
4237
4642
  AUTO: 0,
4643
+
4238
4644
  /**
4239
4645
  * Encodes one alphanumeric or two numeric characters per byte
4240
4646
  */
4241
4647
  ASCII: 1,
4648
+
4242
4649
  /**
4243
4650
  * Encode 8 bit values
4244
4651
  */
4245
- FULL: 6,
4246
- /**
4247
- * Encode with the encoding specified in BarCodeGenerator.CodeTextEncoding
4248
- */
4249
- CUSTOM: 7,
4250
-
4652
+ BYTES: 6,
4251
4653
 
4252
4654
  /**
4253
4655
  * Uses C40 encoding. Encodes Upper-case alphanumeric, Lower case and special characters
@@ -7010,6 +7412,443 @@ HanXinEncodeMode =
7010
7412
  EXTENDED:5
7011
7413
  }
7012
7414
 
7415
+ /**
7416
+ * <p>
7417
+ * Specify the type of the ECC to encode.
7418
+ * </p>
7419
+ */
7420
+ DataMatrixVersion =
7421
+ {
7422
+ /**
7423
+ * <p>
7424
+ * Specifies to automatically pick up the smallest size for DataMatrix.
7425
+ * This is default value.
7426
+ * </p>
7427
+ */
7428
+ AUTO:0,
7429
+ /**
7430
+ * <p>
7431
+ * Instructs to get symbol sizes from Rows And Columns parameters. Note that DataMatrix does not support
7432
+ * custom rows and columns numbers. This option is not recommended to use.
7433
+ * </p>
7434
+ */
7435
+ ROWS_COLUMNS:1,
7436
+ /**
7437
+ * <p>
7438
+ * Specifies size of 9 x 9 modules for ECC000 type.
7439
+ * </p>
7440
+ */
7441
+ ECC000_9x9:2,
7442
+ /**
7443
+ * <p>
7444
+ * Specifies size of 11 x 11 modules for ECC000-ECC050 types.
7445
+ * </p>
7446
+ */
7447
+ ECC000_050_11x11:3,
7448
+ /**
7449
+ * <p>
7450
+ * Specifies size of 13 x 13 modules for ECC000-ECC100 types.
7451
+ * </p>
7452
+ */
7453
+ ECC000_100_13x13:4,
7454
+ /**
7455
+ * <p>
7456
+ * Specifies size of 15 x 15 modules for ECC000-ECC100 types.
7457
+ * </p>
7458
+ */
7459
+ ECC000_100_15x15:5,
7460
+ /**
7461
+ * <p>
7462
+ * Specifies size of 17 x 17 modules for ECC000-ECC140 types.
7463
+ * </p>
7464
+ */
7465
+ ECC000_140_17x17:6,
7466
+ /**
7467
+ * <p>
7468
+ * Specifies size of 19 x 19 modules for ECC000-ECC140 types.
7469
+ * </p>
7470
+ */
7471
+ ECC000_140_19x19:7,
7472
+ /**
7473
+ * <p>
7474
+ * Specifies size of 21 x 21 modules for ECC000-ECC140 types.
7475
+ * </p>
7476
+ */
7477
+ ECC000_140_21x21:8,
7478
+ /**
7479
+ * <p>
7480
+ * Specifies size of 23 x 23 modules for ECC000-ECC140 types.
7481
+ * </p>
7482
+ */
7483
+ ECC000_140_23x23:9,
7484
+ /**
7485
+ * <p>
7486
+ * Specifies size of 25 x 25 modules for ECC000-ECC140 types.
7487
+ * </p>
7488
+ */
7489
+ ECC000_140_25x25:10,
7490
+ /**
7491
+ * <p>
7492
+ * Specifies size of 27 x 27 modules for ECC000-ECC140 types.
7493
+ * </p>
7494
+ */
7495
+ ECC000_140_27x27:11,
7496
+ /**
7497
+ * <p>
7498
+ * Specifies size of 29 x 29 modules for ECC000-ECC140 types.
7499
+ * </p>
7500
+ */
7501
+ ECC000_140_29x29:12,
7502
+ /**
7503
+ * <p>
7504
+ * Specifies size of 31 x 31 modules for ECC000-ECC140 types.
7505
+ * </p>
7506
+ */
7507
+ ECC000_140_31x31:13,
7508
+ /**
7509
+ * <p>
7510
+ * Specifies size of 33 x 33 modules for ECC000-ECC140 types.
7511
+ * </p>
7512
+ */
7513
+ ECC000_140_33x33:14,
7514
+ /**
7515
+ * <p>
7516
+ * Specifies size of 35 x 35 modules for ECC000-ECC140 types.
7517
+ * </p>
7518
+ */
7519
+ ECC000_140_35x35:15,
7520
+ /**
7521
+ * <p>
7522
+ * Specifies size of 37 x 37 modules for ECC000-ECC140 types.
7523
+ * </p>
7524
+ */
7525
+ ECC000_140_37x37:16,
7526
+ /**
7527
+ * <p>
7528
+ * Specifies size of 39 x 39 modules for ECC000-ECC140 types.
7529
+ * </p>
7530
+ */
7531
+ ECC000_140_39x39:17,
7532
+ /**
7533
+ * <p>
7534
+ * Specifies size of 41 x 41 modules for ECC000-ECC140 types.
7535
+ * </p>
7536
+ */
7537
+ ECC000_140_41x41:18,
7538
+ /**
7539
+ * <p>
7540
+ * Specifies size of 43 x 43 modules for ECC000-ECC140 types.
7541
+ * </p>
7542
+ */
7543
+ ECC000_140_43x43:19,
7544
+ /**
7545
+ * <p>
7546
+ * Specifies size of 45 x 45 modules for ECC000-ECC140 types.
7547
+ * </p>
7548
+ */
7549
+ ECC000_140_45x45:20,
7550
+ /**
7551
+ * <p>
7552
+ * Specifies size of 47 x 47 modules for ECC000-ECC140 types.
7553
+ * </p>
7554
+ */
7555
+ ECC000_140_47x47:21,
7556
+ /**
7557
+ * <p>
7558
+ * Specifies size of 49 x 49 modules for ECC000-ECC140 types.
7559
+ * </p>
7560
+ */
7561
+ ECC000_140_49x49:22,
7562
+ /**
7563
+ * <p>
7564
+ * Specifies size of 10 x 10 modules for ECC200 type.
7565
+ * </p>
7566
+ */
7567
+ ECC200_10x10:23,
7568
+ /**
7569
+ * <p>
7570
+ * Specifies size of 12 x 12 modules for ECC200 type.
7571
+ * </p>
7572
+ */
7573
+ ECC200_12x12:24,
7574
+ /**
7575
+ * <p>
7576
+ * Specifies size of 14 x 14 modules for ECC200 type.
7577
+ * </p>
7578
+ */
7579
+ ECC200_14x14:25,
7580
+ /**
7581
+ * <p>
7582
+ * Specifies size of 16 x 16 modules for ECC200 type.
7583
+ * </p>
7584
+ */
7585
+ ECC200_16x16:26,
7586
+ /**
7587
+ * <p>
7588
+ * Specifies size of 18 x 18 modules for ECC200 type.
7589
+ * </p>
7590
+ */
7591
+ ECC200_18x18:27,
7592
+ /**
7593
+ * <p>
7594
+ * Specifies size of 20 x 20 modules for ECC200 type.
7595
+ * </p>
7596
+ */
7597
+ ECC200_20x20:28,
7598
+ /**
7599
+ * <p>
7600
+ * Specifies size of 22 x 22 modules for ECC200 type.
7601
+ * </p>
7602
+ */
7603
+ ECC200_22x22:29,
7604
+ /**
7605
+ * <p>
7606
+ * Specifies size of 24 x 24 modules for ECC200 type.
7607
+ * </p>
7608
+ */
7609
+ ECC200_24x24:30,
7610
+ /**
7611
+ * <p>
7612
+ * Specifies size of 26 x 26 modules for ECC200 type.
7613
+ * </p>
7614
+ */
7615
+ ECC200_26x26:31,
7616
+ /**
7617
+ * <p>
7618
+ * Specifies size of 32 x 32 modules for ECC200 type.
7619
+ * </p>
7620
+ */
7621
+ ECC200_32x32:32,
7622
+ /**
7623
+ * <p>
7624
+ * Specifies size of 36 x 36 modules for ECC200 type.
7625
+ * </p>
7626
+ */
7627
+ ECC200_36x36:33,
7628
+ /**
7629
+ * <p>
7630
+ * Specifies size of 40 x 40 modules for ECC200 type.
7631
+ * </p>
7632
+ */
7633
+ ECC200_40x40:34,
7634
+ /**
7635
+ * <p>
7636
+ * Specifies size of 44 x 44 modules for ECC200 type.
7637
+ * </p>
7638
+ */
7639
+ ECC200_44x44:35,
7640
+ /**
7641
+ * <p>
7642
+ * Specifies size of 48 x 48 modules for ECC200 type.
7643
+ * </p>
7644
+ */
7645
+ ECC200_48x48:36,
7646
+ /**
7647
+ * <p>
7648
+ * Specifies size of 52 x 52 modules for ECC200 type.
7649
+ * </p>
7650
+ */
7651
+ ECC200_52x52:37,
7652
+ /**
7653
+ * <p>
7654
+ * Specifies size of 64 x 64 modules for ECC200 type.
7655
+ * </p>
7656
+ */
7657
+ ECC200_64x64:38,
7658
+ /**
7659
+ * <p>
7660
+ * Specifies size of 72 x 72 modules for ECC200 type.
7661
+ * </p>
7662
+ */
7663
+ ECC200_72x72:39,
7664
+ /**
7665
+ * <p>
7666
+ * Specifies size of 80 x 80 modules for ECC200 type.
7667
+ * </p>
7668
+ */
7669
+ ECC200_80x80:40,
7670
+ /**
7671
+ * <p>
7672
+ * Specifies size of 88 x 88 modules for ECC200 type.
7673
+ * </p>
7674
+ */
7675
+ ECC200_88x88:41,
7676
+ /**
7677
+ * <p>
7678
+ * Specifies size of 96 x 96 modules for ECC200 type.
7679
+ * </p>
7680
+ */
7681
+ ECC200_96x96:42,
7682
+ /**
7683
+ * <p>
7684
+ * Specifies size of 104 x 104 modules for ECC200 type.
7685
+ * </p>
7686
+ */
7687
+ ECC200_104x104:43,
7688
+ /**
7689
+ * <p>
7690
+ * Specifies size of 120 x 120 modules for ECC200 type.
7691
+ * </p>
7692
+ */
7693
+ ECC200_120x120:44,
7694
+ /**
7695
+ * <p>
7696
+ * Specifies size of 132 x 132 modules for ECC200 type.
7697
+ * </p>
7698
+ */
7699
+ ECC200_132x132:45,
7700
+ /**
7701
+ * <p>
7702
+ * Specifies size of 144 x 144 modules for ECC200 type.
7703
+ * </p>
7704
+ */
7705
+ ECC200_144x144:46,
7706
+ /**
7707
+ * <p>
7708
+ * Specifies size of 8 x 18 modules for ECC200 type.
7709
+ * </p>
7710
+ */
7711
+ ECC200_8x18:47,
7712
+ /**
7713
+ * <p>
7714
+ * Specifies size of 8 x 32 modules for ECC200 type.
7715
+ * </p>
7716
+ */
7717
+ ECC200_8x32:48,
7718
+ /**
7719
+ * <p>
7720
+ * Specifies size of 12 x 26 modules for ECC200 type.
7721
+ * </p>
7722
+ */
7723
+ ECC200_12x26:49,
7724
+ /**
7725
+ * <p>
7726
+ * Specifies size of 12 x 36 modules for ECC200 type.
7727
+ * </p>
7728
+ */
7729
+ ECC200_12x36:50,
7730
+ /**
7731
+ * <p>
7732
+ * Specifies size of 16 x 36 modules for ECC200 type.
7733
+ * </p>
7734
+ */
7735
+ ECC200_16x36:51,
7736
+ /**
7737
+ * <p>
7738
+ * Specifies size of 16 x 48 modules for ECC200 type.
7739
+ * </p>
7740
+ */
7741
+ ECC200_16x48:52,
7742
+ /**
7743
+ * <p>
7744
+ * Specifies size of 8 x 48 modules for DMRE barcodes.
7745
+ * </p>
7746
+ */
7747
+ DMRE_8x48:53,
7748
+ /**
7749
+ * <p>
7750
+ * Specifies size of 8 x 64 modules for DMRE barcodes.
7751
+ * </p>
7752
+ */
7753
+ DMRE_8x64:54,
7754
+ /**
7755
+ * <p>
7756
+ * Specifies size of 8 x 80 modules for DMRE barcodes.
7757
+ * </p>
7758
+ */
7759
+ DMRE_8x80:55,
7760
+ /**
7761
+ * <p>
7762
+ * Specifies size of 8 x 96 modules for DMRE barcodes.
7763
+ * </p>
7764
+ */
7765
+ DMRE_8x96:56,
7766
+ /**
7767
+ * <p>
7768
+ * Specifies size of 8 x 120 modules for DMRE barcodes.
7769
+ * </p>
7770
+ */
7771
+ DMRE_8x120:57,
7772
+ /**
7773
+ * <p>
7774
+ * Specifies size of 8 x 144 modules for DMRE barcodes.
7775
+ * </p>
7776
+ */
7777
+ DMRE_8x144:58,
7778
+ /**
7779
+ * <p>
7780
+ * Specifies size of 12 x 64 modules for DMRE barcodes.
7781
+ * </p>
7782
+ */
7783
+ DMRE_12x64:59,
7784
+ /**
7785
+ * <p>
7786
+ * Specifies size of 12 x 88 modules for DMRE barcodes.
7787
+ * </p>
7788
+ */
7789
+ DMRE_12x88:60,
7790
+ /**
7791
+ * <p>
7792
+ * Specifies size of 16 x 64 modules for DMRE barcodes.
7793
+ * </p>
7794
+ */
7795
+ DMRE_16x64:61,
7796
+ /**
7797
+ * <p>
7798
+ * Specifies size of 20 x 36 modules for DMRE barcodes.
7799
+ * </p>
7800
+ */
7801
+ DMRE_20x36:62,
7802
+ /**
7803
+ * <p>
7804
+ * Specifies size of 20 x 44 modules for DMRE barcodes.
7805
+ * </p>
7806
+ */
7807
+ DMRE_20x44:63,
7808
+ /**
7809
+ * <p>
7810
+ * Specifies size of 20 x 64 modules for DMRE barcodes.
7811
+ * </p>
7812
+ */
7813
+ DMRE_20x64:64,
7814
+ /**
7815
+ * <p>
7816
+ * Specifies size of 22 x 48 modules for DMRE barcodes.
7817
+ * </p>
7818
+ */
7819
+ DMRE_22x48:65,
7820
+ /**
7821
+ * <p>
7822
+ * Specifies size of 24 x 48 modules for DMRE barcodes.
7823
+ * </p>
7824
+ */
7825
+ DMRE_24x48:66,
7826
+ /**
7827
+ * <p>
7828
+ * Specifies size of 24 x 64 modules for DMRE barcodes.
7829
+ * </p>
7830
+ */
7831
+ DMRE_24x64:67,
7832
+ /**
7833
+ * <p>
7834
+ * Specifies size of 26 x 40 modules for DMRE barcodes.
7835
+ * </p>
7836
+ */
7837
+ DMRE_26x40:68,
7838
+ /**
7839
+ * <p>
7840
+ * Specifies size of 26 x 48 modules for DMRE barcodes.
7841
+ * </p>
7842
+ */
7843
+ DMRE_26x48:69,
7844
+ /**
7845
+ * <p>
7846
+ * Specifies size of 26 x 64 modules for DMRE barcodes.
7847
+ * </p>
7848
+ */
7849
+ DMRE_26x64:70
7850
+ }
7851
+
7013
7852
  module.exports = {
7014
7853
  BarcodeGenerator,
7015
7854
  EncodeTypes,
@@ -7077,5 +7916,8 @@ module.exports = {
7077
7916
  HanXinErrorLevel,
7078
7917
  HanXinVersion,
7079
7918
  Code128EncodeMode,
7080
- HanXinParameters
7919
+ HanXinParameters,
7920
+ DataMatrixVersion,
7921
+ DataMatrixExtCodetextBuilder,
7922
+ HanXinExtCodetextBuilder
7081
7923
  };
@@ -891,21 +891,24 @@ class Pdf417ExtendedParameters extends joint.BaseJavaClass
891
891
  }
892
892
 
893
893
  /**
894
- * Indicates whether the segment is the last segment of a Macro PDF417 file.
895
- * @return Terminator.
894
+ * <p>
895
+ * Used to instruct the reader to interpret the data contained within the symbol as programming for reader initialization.
896
+ * </p>
897
+ *
898
+ * @return Reader initialization flag
896
899
  */
897
- getMacroPdf417Terminator()
900
+ isReaderInitialization()
898
901
  {
899
- return this.getJavaClass().getMacroPdf417TerminatorSync();
902
+ return this.getJavaClass().isReaderInitializationSync();
900
903
  }
901
904
 
902
905
  /**
903
- * Tests whether all parameters has only default values
904
- * Value: Returns {@code <b>true</b>} if all parameters has only default values; otherwise, {@code <b>false</b>}.
906
+ * <p>Used to instruct the reader to interpret the data contained within the symbol as programming for reader initialization.</p>
907
+ * @return Reader initialization flag
905
908
  */
906
- isEmpty()
909
+ getMacroPdf417Terminator()
907
910
  {
908
- return this.getJavaClass().isEmptySync();
911
+ return this.getJavaClass().getMacroPdf417TerminatorSync();
909
912
  }
910
913
 
911
914
  /**
@@ -1638,6 +1641,7 @@ class BarCodeExtendedParameters extends joint.BaseJavaClass
1638
1641
  _dataBarParameters;
1639
1642
  _maxiCodeParameters;
1640
1643
  _dotCodeExtendedParameters;
1644
+ _dataMatrixExtendedParameters;
1641
1645
 
1642
1646
  constructor(javaclass)
1643
1647
  {
@@ -1654,6 +1658,7 @@ class BarCodeExtendedParameters extends joint.BaseJavaClass
1654
1658
  this._dataBarParameters = new DataBarExtendedParameters(this.getJavaClass().getDataBarSync());
1655
1659
  this._maxiCodeParameters = new MaxiCodeExtendedParameters(this.getJavaClass().getMaxiCodeSync());
1656
1660
  this._dotCodeExtendedParameters = new DotCodeExtendedParameters(this.getJavaClass().getDotCodeSync());
1661
+ this._dataMatrixExtendedParameters = new DataMatrixExtendedParameters(this.getJavaClass().getDataMatrixSync());
1657
1662
  }
1658
1663
 
1659
1664
  /**
@@ -1691,6 +1696,14 @@ class BarCodeExtendedParameters extends joint.BaseJavaClass
1691
1696
  return this._dotCodeExtendedParameters;
1692
1697
  }
1693
1698
 
1699
+ /**
1700
+ * <p>Gets a DotCode additional information{@code DotCodeExtendedParameters} of recognized barcode</p>Value: A DotCode additional information{@code DotCodeExtendedParameters} of recognized barcode
1701
+ */
1702
+ getDataMatrix()
1703
+ {
1704
+ return this._dataMatrixExtendedParameters;
1705
+ }
1706
+
1694
1707
  /**
1695
1708
  * Gets a special data Code128ExtendedParameters of Code128 recognized barcode Value: A special data Code128ExtendedParameters of Code128 recognized barcode
1696
1709
  */
@@ -2158,6 +2171,28 @@ class QualitySettings extends joint.BaseJavaClass
2158
2171
  }
2159
2172
  }
2160
2173
 
2174
+ /**
2175
+ * <p>
2176
+ * Allows engine using additional image restorations to recognize corrupted barcodes. At this time, it is used only in MicroPdf417 barcode type.
2177
+ * </p>Value:
2178
+ * Allows engine using additional image restorations to recognize corrupted barcodes.
2179
+ */
2180
+ getAllowAdditionalRestorations()
2181
+ {
2182
+ return this.getJavaClass().getAllowAdditionalRestorationsSync();
2183
+ }
2184
+
2185
+ /**
2186
+ * <p>
2187
+ * Allows engine using additional image restorations to recognize corrupted barcodes. At this time, it is used only in MicroPdf417 barcode type.
2188
+ * </p>Value:
2189
+ * Allows engine using additional image restorations to recognize corrupted barcodes.
2190
+ */
2191
+ setAllowAdditionalRestorations(value)
2192
+ {
2193
+ this.getJavaClass().setAllowAdditionalRestorationsSync(value);
2194
+ }
2195
+
2161
2196
  /**
2162
2197
  * Allows engine for Postal barcodes to recognize slightly noised images. Mode helps to recognize sligtly damaged Postal barcodes.
2163
2198
  */
@@ -2962,7 +2997,7 @@ class MaxiCodeExtendedParameters extends joint.BaseJavaClass
2962
2997
  */
2963
2998
  equals(obj)
2964
2999
  {
2965
- return this.getJavaClass().equalsSync(obj);
3000
+ return this.getJavaClass().equalsSync(obj.getJavaClass());
2966
3001
  }
2967
3002
 
2968
3003
  /**
@@ -3071,6 +3106,109 @@ class DotCodeExtendedParameters extends joint.BaseJavaClass
3071
3106
  }
3072
3107
  }
3073
3108
 
3109
+ /**
3110
+ * <p>
3111
+ * Stores special data of DataMatrix recognized barcode
3112
+ * </p><p><hr><blockquote><pre>
3113
+ * This sample shows how to get DataMatrix raw values
3114
+ * <pre>
3115
+ * let generator = new BarcodeGenerator(EncodeTypes.DATA_MATRIX, "12345"))
3116
+ * generator.save("c:\\test.png", BarcodeImageFormat.PNG);
3117
+ *
3118
+ * let reader = new BarCodeReader("c:\\test.png", null, DecodeType.DATA_MATRIX))
3119
+ * reader.readBarCodes().forEach(function(result, i, results)
3120
+ * {
3121
+ * console.log("BarCode type: " + result.getCodeTypeName());
3122
+ * console.log("BarCode codetext: " + result.getCodeText());
3123
+ * console.log("DataMatrix barcode ID: " + result.getExtended().getDataMatrix().getStructuredAppendBarcodeId());
3124
+ * console.log("DataMatrix barcodes count: " + result.getExtended().getDataMatrix().getStructuredAppendBarcodesCount());
3125
+ * console.log("DataMatrix file ID: " + result.getExtended().getDataMatrix().getStructuredAppendFileId());
3126
+ * console.log("DataMatrix is reader programming: " + result.getExtended().getDataMatrix().isReaderProgramming());
3127
+ * });
3128
+ * </pre>
3129
+ * </pre></blockquote></hr></p>
3130
+ */
3131
+ class DataMatrixExtendedParameters extends joint.BaseJavaClass
3132
+ {
3133
+ constructor(javaClass)
3134
+ {
3135
+ super(javaClass);
3136
+ }
3137
+
3138
+ init()
3139
+ {
3140
+ }
3141
+
3142
+ /**
3143
+ * <p>Gets the DataMatrix structured append mode barcodes count. Default value is -1. Count must be a value from 1 to 35.</p>Value: The count of the DataMatrix structured append mode barcode.
3144
+ */
3145
+ getStructuredAppendBarcodesCount()
3146
+ {
3147
+ return this.getJavaClass().getStructuredAppendBarcodesCountSync();
3148
+ }
3149
+
3150
+ /**
3151
+ * <p>Gets the ID of the DataMatrix structured append mode barcode. ID starts from 1 and must be less or equal to barcodes count. Default value is -1.</p>Value: The ID of the DataMatrix structured append mode barcode.
3152
+ */
3153
+ getStructuredAppendBarcodeId()
3154
+ {
3155
+ return this.getJavaClass().getStructuredAppendBarcodeIdSync();
3156
+ }
3157
+
3158
+ /**
3159
+ * <p>Gets the ID of the DataMatrix structured append mode barcode. ID starts from 1 and must be less or equal to barcodes count. Default value is -1.</p>Value: The ID of the DataMatrix structured append mode barcode.
3160
+ */
3161
+ getStructuredAppendFileId()
3162
+ {
3163
+ return this.getJavaClass().getStructuredAppendFileIdSync();
3164
+ }
3165
+
3166
+ /**
3167
+ * <p>
3168
+ * Indicates whether code is used for instruct reader to interpret the following data as instructions for initialization or reprogramming of the bar code reader.
3169
+ * Default value is false.
3170
+ * </p>
3171
+ */
3172
+ isReaderProgramming()
3173
+ {
3174
+ return this.getJavaClass().isReaderProgrammingSync();
3175
+ }
3176
+
3177
+ /**
3178
+ * <p>
3179
+ * Returns a value indicating whether this instance is equal to a specified {@code DataMatrixExtendedParameters} value.
3180
+ * </p>
3181
+ * @return {@code <b>true</b>} if obj has the same value as this instance; otherwise, {@code <b>false</b>}.
3182
+ * @param obj An System.Object value to compare to this instance.
3183
+ */
3184
+ equals(obj)
3185
+ {
3186
+ return this.getJavaClass().equalsSync(obj.getJavaClass());
3187
+ }
3188
+
3189
+ /**
3190
+ * <p>
3191
+ * Returns the hash code for this instance.
3192
+ * </p>
3193
+ * @return A 32-bit signed integer hash code.
3194
+ */
3195
+ hashCode()
3196
+ {
3197
+ return this.getJavaClass().hashCodeSync();
3198
+ }
3199
+
3200
+ /**
3201
+ * <p>
3202
+ * Returns a human-readable string representation of this {@code DataMatrixExtendedParameters}.
3203
+ * </p>
3204
+ * @return A string that represents this {@code DataMatrixExtendedParameters}.
3205
+ */
3206
+ toString()
3207
+ {
3208
+ return this.getJavaClass().toStringSync();
3209
+ }
3210
+ }
3211
+
3074
3212
  /**
3075
3213
  * Specify the type of barcode to read.
3076
3214
  *
@@ -3770,5 +3908,6 @@ module.exports = {
3770
3908
  BarcodeSettings,
3771
3909
  CustomerInformationInterpretingType,
3772
3910
  RecognitionAbortedException,
3773
- DotCodeExtendedParameters
3911
+ DotCodeExtendedParameters,
3912
+ DataMatrixExtendedParameters
3774
3913
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aspose.barcode",
3
- "version": "23.6.0",
3
+ "version": "23.8.0",
4
4
  "description": "barcode generation and recognition component",
5
5
  "scripts": {
6
6
  "test": "echo \"Error: no test specified\" && exit 1"