Place invoice payment QR code bottom right

This commit is contained in:
2026-07-22 19:45:01 +02:00
parent fbea66b754
commit 5dcdc29a18

View File

@@ -981,31 +981,36 @@ export const createInvoicePDF = async (server:FastifyInstance, returnMode, invoi
color: rgb(0, 0, 0),
lineHeight: 10,
opacity: 1,
maxWidth: paymentQrCode ? 360 : 500
maxWidth: 500
})
}
if (paymentQrCode) {
const lastPage = pages[pages.length - 1]
const mm = 2.83
const qrSize = 32 * mm
const rightMargin = 20 * mm
const bottomMargin = 20 * mm
const qrX = lastPage.getWidth() - rightMargin - qrSize
const qrY = bottomMargin
lastPage.drawText("Überweisung per QR-Code", {
x: qrX,
y: qrY + qrSize + 7,
size: 8,
color: rgb(0, 0, 0),
lineHeight: 8,
opacity: 1,
maxWidth: qrSize,
font: fontBold,
})
if (paymentQrCode) {
const qrSize = 32 * 2.83
const qrPosition = getCoordinatesForPDFLib(166, rowHeight + endTextDiff + (invoiceData.totalArray.length - 3) * 8 - 1, page1)
pages[pageCounter - 1].drawText("Überweisung per QR-Code", {
y: qrPosition.y + qrSize + 7,
x: getCoordinatesForPDFLib(166, 0, page1).x,
size: 8,
color: rgb(0, 0, 0),
lineHeight: 8,
opacity: 1,
maxWidth: 120,
font: fontBold,
})
pages[pageCounter - 1].drawImage(paymentQrCode, {
x: qrPosition.x,
y: qrPosition.y,
width: qrSize,
height: qrSize,
})
}
lastPage.drawImage(paymentQrCode, {
x: qrX,
y: qrY,
width: qrSize,
height: qrSize,
})
}
return await pdfDoc.saveAsBase64()