const _MwWrapper = require("../_mwbridge/_mw-wrapper.js");
const QrStructuredAppendParameters = require("./qr-structured-append-parameters");
const {javaFloat} = require("../_mwbridge/_mw-bridge");
/**
* QR parameters.
*/
class QrParameters extends _MwWrapper
{
structuredAppend;
constructor(mwObject)
{
super(mwObject);
this._initializeWrapperMembers();
}
_initializeWrapperMembers()
{
this.structuredAppend = new QrStructuredAppendParameters(this.getJavaClass().getStructuredAppendSync());
}
/**
* <p>
* Extended Channel Interpretation Identifiers. It is used to tell the barcode reader details
* about the used references for encoding the data in the symbol.
* Current implementation consists all well known charset encodings.
* Not supported by MicroQR.
* </p>
*/
getECIEncoding()
{
return this.getJavaClass().getECIEncodingSync();
}
/**
* <p>
* Extended Channel Interpretation Identifiers. It is used to tell the barcode reader details
* about the used references for encoding the data in the symbol.
* Current implementation consists all well known charset encodings.
* Not supported by MicroQR.
* </p>
*/
setECIEncoding( value)
{
this.getJavaClass().setECIEncodingSync(value);
}
/**
* QR structured append parameters.
*/
getStructuredAppend()
{
return this.structuredAppend;
}
/**
* QR structured append parameters.
*/
setStructuredAppend(value)
{
this.structuredAppend = value;
this.getJavaClass().setStructuredAppendSync(value.getJavaClass());
}
/**
* Extended Channel Interpretation Identifiers. It is used to tell the barcode reader details<br>
* about the used references for encoding the data in the symbol.<br>
* Current implementation consists all well known charset encodings.
* @deprecated This property is obsolete and will be removed in future releases. Instead, use the getECIEncoding().
*/
getQrECIEncoding()
{
return this.getJavaClass().getQrECIEncodingSync();
}
/**
* <p>
* QR symbology type of BarCode's encoding mode.
* Default value: QREncodeMode.Auto.
* </p>
*/
getEncodeMode()
{
return this.getJavaClass().getEncodeModeSync();
}
/**
* <p>
* QR symbology type of BarCode's encoding mode.
* Default value: QREncodeMode.Auto.
* </p>
*/
setEncodeMode(value)
{
this.getJavaClass().setEncodeModeSync(value);
}
/**
* Extended Channel Interpretation Identifiers. It is used to tell the barcode reader details<br>
* about the used references for encoding the data in the symbol.<br>
* Current implementation consists all well known charset encodings.
* @deprecated This property is obsolete and will be removed in future releases. Instead, use the setECIEncoding().
*/
setQrECIEncoding(value)
{
this.getJavaClass().setECIEncodingSync(value);
}
/**
* QR symbology type of BarCode's encoding mode.<br>
* Default value: QREncodeMode.AUTO.
*/
getQrEncodeMode()
{
return this.getJavaClass().getQrEncodeModeSync();
}
/**
* QR symbology type of BarCode's encoding mode.<br>
* Default value: QREncodeMode.AUTO.
* @deprecated This property is obsolete and will be removed in future releases. Instead, use the setEncodeMode().
*/
setQrEncodeMode(value)
{
this.getJavaClass().setEncodeModeSync(value);
}
/**
* QR / MicroQR selector mode. Select ForceQR for standard QR symbols, Auto for MicroQR.
* @deprecated This property is obsolete and will be removed in future releases. Instead, use the getEncodeMode().
*/
getQrEncodeType()
{
let value = this.getJavaClass().getQrEncodeTypeSync();
return value;
}
/**
* QR / MicroQR selector mode. Select ForceQR for standard QR symbols, Auto for MicroQR.
* @deprecated This property is obsolete and will be removed in future releases. Instead, use the setEncodeMode().
*/
setQrEncodeType(value)
{
this.getJavaClass().setQrEncodeTypeSync(value);
}
/**
* <p>
* Level of Reed-Solomon error correction for QR, MicroQR and RectMicroQR barcode.
* From low to high: LevelL, LevelM, LevelQ, LevelH. See QRErrorLevel.
* </p>
*/
getErrorLevel()
{
return this.getJavaClass().getErrorLevelSync();
}
/**
* <p>
* Level of Reed-Solomon error correction for QR, MicroQR and RectMicroQR barcode.
* From low to high: LevelL, LevelM, LevelQ, LevelH. See QRErrorLevel.
* </p>
*/
setErrorLevel(value)
{
this.getJavaClass().setErrorLevelSync(value);
}
/**
* Level of Reed-Solomon error correction for QR barcode.<br>
* From low to high: LEVEL_L, LEVEL_M, LEVEL_Q, LEVEL_H. see QRErrorLevel.
* @deprecated This property is obsolete and will be removed in future releases. Instead, use the getErrorLevel().
*/
getQrErrorLevel()
{
return this.getJavaClass().getQrErrorLevelSync();
}
/**
* Level of Reed-Solomon error correction for QR barcode.<br>
* From low to high: LEVEL_L, LEVEL_M, LEVEL_Q, LEVEL_H. see QRErrorLevel.
* @deprecated This property is obsolete and will be removed in future releases. Instead, use the setErrorLevel().
*/
setQrErrorLevel(value)
{
this.getJavaClass().setErrorLevelSync(value);
}
/**
* <p>
* Version of QR Code.From Version1 to Version40.
* Default value is QRVersion.Auto.
* </p>
*/
getVersion()
{
return this.getJavaClass().getVersionSync();
}
/**
* <p>
* Version of QR Code.From Version1 to Version40.
* Default value is QRVersion.Auto.
* </p>
*/
setVersion(value)
{
this.getJavaClass().setVersionSync(value);
}
/**
* Version of QR Code.<br>
* From Version1 to Version40 for QR code and from M1 to M4 for MicroQr.<br>
* Default value is QRVersion.AUTO.
* @deprecated This property is obsolete and will be removed in future releases. Instead, use the getVersion().
*/
getQrVersion()
{
return this.getJavaClass().getQrVersionSync();
}
/**
* Version of QR Code.<br>
* From Version1 to Version40 for QR code and from M1 to M4 for MicroQr.<br>
* Default value is QRVersion.AUTO.
* @deprecated This property is obsolete and will be removed in future releases. Instead, use the setVersion().
*/
setQrVersion(value)
{
this.getJavaClass().setVersionSync(value);
}
/**
* <p>
* Version of MicroQR Code. From version M1 to version M4.
* Default value is MicroQRVersion.Auto.
* </p>
*/
getMicroQRVersion()
{
return this.getJavaClass().getMicroQRVersionSync();
}
/**
* <p>
* Version of MicroQR Code. From version M1 to version M4.
* Default value is MicroQRVersion.Auto.
* </p>
*/
setMicroQRVersion(value)
{
this.getJavaClass().setMicroQRVersionSync(value);
}
/**
* <p>
* Version of RectMicroQR Code. From version R7x59 to version R17x139.
* Default value is RectMicroQRVersion.Auto.
* </p>
*/
getRectMicroQrVersion()
{
return this.getJavaClass().getRectMicroQrVersionSync();
}
/**
* <p>
* Version of RectMicroQR Code. From version R7x59 to version R17x139.
* Default value is RectMicroQRVersion.Auto.
* </p>
*/
setRectMicroQrVersion(value)
{
this.getJavaClass().setRectMicroQrVersionSync(value);
}
/**
* Height/Width ratio of 2D BarCode module.
*/
getAspectRatio()
{
return this.getJavaClass().getAspectRatioSync();
}
/**
* Height/Width ratio of 2D BarCode module.
*/
setAspectRatio(value)
{
this.getJavaClass().setAspectRatioSync(javaFloat(value));
}
/**
* <p>
* <p>Gets or sets a value indicating whether GS1 special characters should be encoded in Byte mode for QR and RectMicroQR barcodes.</p>
* <p>If false, GS1 separators may be encoded as '%' in Alphanumeric mode according to QR specification.</p>
* <p>If true, GS1 group separators are encoded in Byte mode as the 0x1D character, and '%' characters are also encoded in Byte mode to preserve them as data.</p>
* <p>This option may improve compatibility with decoders that expect byte-level GS1 group separators and prevents '%' data characters from being interpreted as GS1 separators.</p>
* </p>
*
* @return a value indicating whether GS1 special characters should be encoded in Byte mode for QR and RectMicroQR barcodes.
*/
getEncodeGS1SeparatorInByteMode()
{
return this.getJavaClass().getEncodeGS1SeparatorInByteModeSync();
}
/**
* <p>
* <p>Gets or sets a value indicating whether GS1 special characters should be encoded in Byte mode for QR and RectMicroQR barcodes.</p>
* <p>If false, GS1 separators may be encoded as '%' in Alphanumeric mode according to QR specification.</p>
* <p>If true, GS1 group separators are encoded in Byte mode as the 0x1D character, and '%' characters are also encoded in Byte mode to preserve them as data.</p>
* <p>This option may improve compatibility with decoders that expect byte-level GS1 group separators and prevents '%' data characters from being interpreted as GS1 separators.</p>
* </p>
*
* @param value a value indicating whether GS1 special characters should be encoded in Byte mode for QR and RectMicroQR barcodes.
*/
setEncodeGS1SeparatorInByteMode(value)
{
this.getJavaClass().setEncodeGS1SeparatorInByteModeSync(value);
}
/**
* Returns a human-readable string representation of this QrParameters.<br>
* @return A string that represents this QrParameters.
*/
toString()
{
return this.getJavaClass().toStringSync();
}
}
module.exports = QrParameters;