diff --git a/paperless-backend/src/label-print-agent/label-renderer.service.ts b/paperless-backend/src/label-print-agent/label-renderer.service.ts index 66144dc..116e24e 100644 --- a/paperless-backend/src/label-print-agent/label-renderer.service.ts +++ b/paperless-backend/src/label-print-agent/label-renderer.service.ts @@ -51,8 +51,11 @@ export class LabelRendererService { const fontWeight = el.bold ? 'bold' : 'normal'; const textAnchor = el.align === 'center' ? 'middle' : el.align === 'right' ? 'end' : 'start'; const maxWidthAttr = el.maxWidth ? ` textLength="${mm(el.maxWidth)}" lengthAdjust="spacingAndGlyphs"` : ''; + // librsvg (used by sharp) ignores dominant-baseline; add fontSize to y so that + // the stored coordinate is the top of the text, not the baseline. + const yBaseline = y + fontSize; parts.push( - `${content}`, + `${content}`, ); } else if (el.type === 'qr') { const x = mm(el.x);