From ac45514356af404843f753bc0abb3fb3482f68a3 Mon Sep 17 00:00:00 2001 From: Nick Szaunig Date: Sat, 5 Sep 2026 16:44:25 +0200 Subject: [PATCH] fix: remove label cut lines and zero-pad printed dates The dashed rectangle drawn around every label slot (a cut/crop line) wasn't needed and is gone, along with the width/height params that existed only to draw it. Dates on the label (bottling date, MHD) now use { day: '2-digit', month: '2-digit' } so single-digit values print with a leading zero (05.03.2026, not 5.3.2026) - the default 'numeric' formatting was dropping it. Co-Authored-By: Claude Sonnet 5 --- .../label-templates.service.ts | 29 ++++++------------- 1 file changed, 9 insertions(+), 20 deletions(-) diff --git a/ApiCore-Backend/src/label-templates/label-templates.service.ts b/ApiCore-Backend/src/label-templates/label-templates.service.ts index 021b00d..f371efa 100644 --- a/ApiCore-Backend/src/label-templates/label-templates.service.ts +++ b/ApiCore-Backend/src/label-templates/label-templates.service.ts @@ -29,8 +29,15 @@ interface SheetLayout { gapYMm: number; } +// '2-digit' forces a leading zero for day/month (e.g. "05.03.2026") - the +// default 'numeric' formatting drops it ("5.3.2026"), which is what the MHD +// on a printed label was showing. function formatDate(date: Date): string { - return date.toLocaleDateString('de-DE'); + return date.toLocaleDateString('de-DE', { + day: '2-digit', + month: '2-digit', + year: 'numeric', + }); } // Prisma stores `elements` as a plain Json column; the shape is only ever @@ -352,21 +359,11 @@ export class LabelTemplatesService { elements, centerX - w / 2, centerY - h / 2, - w, - h, qrCodeBuffer, ); doc.restore(); } else { - this.drawLabel( - doc, - elements, - originX, - originY, - slotW, - slotH, - qrCodeBuffer, - ); + this.drawLabel(doc, elements, originX, originY, qrCodeBuffer); } } @@ -379,16 +376,8 @@ export class LabelTemplatesService { elements: LabelElement[], originX: number, originY: number, - widthPt: number, - heightPt: number, qrCodeBuffer: Buffer | null, ): void { - doc - .rect(originX, originY, widthPt, heightPt) - .dash(2, { space: 2 }) - .stroke('#999999') - .undash(); - for (const element of elements) { this.drawElement(doc, element, originX, originY, qrCodeBuffer); }