From bcb9fc363ed5ea2724886bb9023c80965a334a10 Mon Sep 17 00:00:00 2001 From: "gpt-engineer-app[bot]" <159125892+gpt-engineer-app[bot]@users.noreply.github.com> Date: Sat, 18 Apr 2026 19:01:28 +0000 Subject: [PATCH] Changes Co-authored-by: renee-png <262607627+renee-png@users.noreply.github.com> --- src/lib/pdf-pleading.ts | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/lib/pdf-pleading.ts b/src/lib/pdf-pleading.ts index f368e2f..afa29f9 100644 --- a/src/lib/pdf-pleading.ts +++ b/src/lib/pdf-pleading.ts @@ -258,10 +258,22 @@ export async function downloadPleadingPdf(input: PleadingInput, filename: string y = captionEndY + LINE_H; if (input.title) { - ensureSpace(LINE_H * 2); setFont(pdf, { bold: true }); - pdf.text(input.title.toUpperCase(), PAGE_W / 2, y, { align: "center" }); - y += LINE_H * 1.5; + const titleText = input.title.toUpperCase(); + const titleLines = pdf.splitTextToSize(titleText, CONTENT_W) as string[]; + ensureSpace(LINE_H * (titleLines.length + 2)); + y += LINE_H; // one blank line before title + titleLines.forEach((line, i) => { + const isLast = i === titleLines.length - 1; + pdf.text(line, PAGE_W / 2, y, { align: "center" }); + if (isLast) { + const tw = pdf.getTextWidth(line); + pdf.setLineWidth(0.6); + pdf.line((PAGE_W - tw) / 2, y + 1.5, (PAGE_W + tw) / 2, y + 1.5); + } + y += LINE_H; + }); + y += LINE_H; // one blank line after title } setFont(pdf, {}); // reset to non-bold for body