diff --git a/src/server/services/PdfService.ts b/src/server/services/PdfService.ts index 12f7161..cf4e73e 100644 --- a/src/server/services/PdfService.ts +++ b/src/server/services/PdfService.ts @@ -392,7 +392,6 @@ export class PdfService { } } - // Reformulação: sem recuo de parágrafo (nem blockquote, nem primeira linha) let lines: { tokens: { text: string, font: any, underline: boolean, bold: boolean, italic: boolean }[] }[] = []; let currentTokens: { text: string, font: any, underline: boolean, bold: boolean, italic: boolean }[] = []; let currentWidth = 0; @@ -423,6 +422,7 @@ export class PdfService { } let line = lines[i]; let drawX = x; + // Remove espaços no início e fim da linha para não justificar esses espaços let trimmedTokens = [...line.tokens]; while (trimmedTokens.length && /^\s+$/.test(trimmedTokens[0].text)) trimmedTokens.shift(); @@ -430,6 +430,7 @@ export class PdfService { let totalWidth = trimmedTokens.reduce((acc, t) => acc + t.font.widthOfTextAtSize(t.text, fontSize), 0); + // Corrige centralização: centraliza a linha inteira, inclusive se for a única linha do parágrafo if (align === 'center') { drawX = x + (maxWidth - totalWidth) / 2; for (const t of trimmedTokens) {