Aspose.BarCodeのQREncodeMode.BYTESについて

以下のTopicでバージョンアップして追加の確認です。
https://forum.aspose.com/t/topic/280773

Aspose.BarCode for Java 24.6から
QREncodeMode.BYTESが「非推奨」となりましたが、
「廃止」ではなくまだ使用できる認識で合っていますか?

今回、22.12から24.6へバージョンアップしましたが、
QREncodeMode.BYTESを指定し作成されるQRコードのQRバージョンが低く作成され、
また「AUTO」で作成したイメージと一致したため、24.6での使用可否を確認させてください。

また、既に使用できないのであれば22.12での作成条件で作成されるQRコードと同じイメージを
24.6で作成する方法を教えてください。

<22.12の生成条件>
QrVersion:AUTO
QrErrorLevel:M
QREncodeMode:BYTES

@mio.kazuhisa,

詳細をありがとうございます。

新しいバージョンの API で QREncodeMode.BINARY の使用をお試しください。

com.aspose.barcode.generation.BarcodeGenerator generator = new com.aspose.barcode.generation.BarcodeGenerator(com.aspose.barcode.generation.EncodeTypes.QR);
generator.setCodeText("12345TEXT");
generator.getParameters().getBarcode().getQR().setQrEncodeMode(QREncodeMode.BINARY);
generator.getParameters().getBarcode().getQR().setQrVersion(QRVersion.AUTO);
generator.getParameters().getBarcode().getQR().setQrErrorLevel(QRErrorLevel.LEVEL_M);
generator.save("d:\\files\\out1.png");

問題がまだ解決しない場合は、詳細、サンプル コード、リソース ファイルをお知らせください。

回答いただいた内容で試してみましたが、BINARYとAUTOで同じQRコードが作成されました。
文字列は以下の152桁を与えて生成しておりますので、「BINARY」だとバージョン8でされると思いますが、バージョン6で作成されました。

文字列(152桁):JT69930 26252C1 10020104022023110902 P2620 855895905209010000150FTP362 0001ZZ/AK- 12 K4

BINARY_24.6.png ・・・ バージョン24.6で「QREncodeMode.BINARY」で生成したQRコード
AUTO_24.6.png ・・・ バージョン24.6で「QREncodeMode.AUTO」で生成したQRコード
BYTES_22.12.png ・・・ バージョン22.12で「QREncodeMode.AUTO」で生成したQRコード
BINARY_24.6.png (7.8 KB)
BYTES_22.12.png (10.0 KB)
AUTO_24.6.png (7.9 KB)

QRコード生成に使用したサンプルコード
	private ByteArrayInputStream getQRCodeImage(String code, String version, String level, String encodeMode) throws Exception {
		
		BarcodeGenerator generator = new BarcodeGenerator(
				com.aspose.barcode.generation.EncodeTypes.QR,
				code);
		BaseGenerationParameters baseParams = generator.getParameters();
		BarcodeParameters barcodeParams = baseParams.getBarcode();
		QrParameters qrParams = barcodeParams.getQR();

		qrParams.setQrErrorLevel(QRErrorLevel.LEVEL_M);
		qrParams.setQrEncodeMode(QREncodeMode.BINARY);
		qrParams.setQrEncodeType(QREncodeType.FORCE_QR);
		qrParams.setQrVersion(QRVersion.AUTO);

		barcodeParams.getCodeTextParameters().setLocation(CodeLocation.NONE);

		ByteArrayOutputStream os = new ByteArrayOutputStream();
		generator.save(os, BCIF);
		
		return new ByteArrayInputStream(os.toByteArray());
	}

@mio.kazuhisa,

サンプル コード セグメントと画像ファイルをありがとうございます。

はい、これは新しいバージョンの API を使用した場合に想定される動作です。setQrVersion() メソッドを使用して、コード内で希望するバージョンを設定できます。