Swiss QR barcode: wrong placement of cross if text is displayed

When I set codeTextLocation=ABOVE, the resulting image contains the code text and the swiss cross is placed at the center of the whole image rather than the center of only the barcode. The resulting image is attached.
barcode.png (3.1 KB)

The test code is as follows:

	@Test
public void testSwissQr() throws IOException
{
	SwissQRCodetext swissQRCode = new SwissQRCodetext();

	// Bill Details
	swissQRCode.getBill().setVersion(QrBillStandardVersion.V2_0);
	swissQRCode.getBill().setAccount("CH9300762011623852957");
	swissQRCode.getBill().setAmount(12.34);
	swissQRCode.getBill().setCurrency("CHF");
	swissQRCode.getBill().setReference("reference");
	swissQRCode.getBill().setBillInformation("bill information");
	swissQRCode.getBill().setUnstructuredMessage("some message");

	// Creditor Address
	Address creditorAddress = new Address();
	creditorAddress.setName("Creditor Name");
	creditorAddress.setPostalCode("1234");
	creditorAddress.setTown("Creditor Town");
	creditorAddress.setCountryCode("CH");
	swissQRCode.getBill().setCreditor(creditorAddress);

	// Debtor Address
	Address debtorAddress = new Address();
	debtorAddress.setName("Debtor Name");
	debtorAddress.setPostalCode("4321");
	debtorAddress.setTown("Debtor Town");
	debtorAddress.setCountryCode("CH");
	swissQRCode.getBill().setDebtor(debtorAddress);

	ComplexBarcodeGenerator swissQRGenerator = new ComplexBarcodeGenerator(swissQRCode);
	swissQRGenerator.getParameters().getBarcode().getCodeTextParameters().setLocation(CodeLocation.ABOVE);

	BufferedImage barcodeImg = swissQRGenerator.generateBarCodeImage();
	File imageFile = new File("barcode.png").getAbsoluteFile();
	ImageIO.write(barcodeImg, "png", imageFile);
	System.out.println("wrote barcode image: " + imageFile.getAbsolutePath());
}

@INFINICA,

Thanks for the details and sample code.

After conducting an initial test, I was able to reproduce the issue as you described. I have identified an issue with the Swiss QR barcode, specifically with the incorrect placement of the cross when text is displayed.

We will need to evaluate the issue in more detail and determine if any adjustments need to be made to your code. We have opened the following new ticket(s) in our internal issue tracking system and will deliver their fixes according to the terms mentioned in Free Support Policies.

Issue ID(s): BARCODEJAVA-1697

You can obtain Paid Support Services if you need support on a priority basis, along with the direct access to our Paid Support management team.

@INFINICA,

We are pleased to inform you that your issue (logged earlier as “BARCODEJAVA-1697”) has been resolved. The fix will be included in an upcoming release (Aspose.BarCode for Java v23.11) that we plan to release in the next month. You will be notified when new versions are released.

@INFINICA,

Please try our latest version/fix:, e.g., Aspose.BarCode for Java 24.4, you issue(s) should be fixed in it.

Let us know your feedback.