diff --git a/src/lib/bookman-fonts.ts b/src/lib/bookman-fonts.ts index b91bc43..9f35587 100644 --- a/src/lib/bookman-fonts.ts +++ b/src/lib/bookman-fonts.ts @@ -6810,16 +6810,14 @@ const bolditalic_b64 = "LUEtQRu6BAAEAAALK1mwDiNCsA8jQrASQ1i5GH47IRu6AagEAAALK1mwECNCsBEjQgEBKysrKysrKysrKysrKytzc3N0dHRzc3Nz" + "c3Nzc3Nzc3Nzc15zXnN0dQErK3NzdHVzdHUAKysrKysrAEuwHlBYsANFaLgDakVosECLYLAgI0RZsAdFaLgDa0VosECLYLAiI0QA"; -let registered = false; export function registerBookmanFont(pdf: jsPDF) { - // Add to VFS once; jsPDF instances share the global file system. - if (!registered) { - pdf.addFileToVFS("BookmanOldStyle-Regular.ttf", regular_b64); - pdf.addFileToVFS("BookmanOldStyle-Italic.ttf", italic_b64); - pdf.addFileToVFS("BookmanOldStyle-Bold.ttf", bold_b64); - pdf.addFileToVFS("BookmanOldStyle-BoldItalic.ttf", bolditalic_b64); - registered = true; - } + // jsPDF's VFS is per-instance — must add files for every new pdf object + // before calling addFont, otherwise addFont throws + // "Font is not stored as string-data in vFS". + pdf.addFileToVFS("BookmanOldStyle-Regular.ttf", regular_b64); + pdf.addFileToVFS("BookmanOldStyle-Italic.ttf", italic_b64); + pdf.addFileToVFS("BookmanOldStyle-Bold.ttf", bold_b64); + pdf.addFileToVFS("BookmanOldStyle-BoldItalic.ttf", bolditalic_b64); pdf.addFont("BookmanOldStyle-Regular.ttf", BOOKMAN_FAMILY, "normal"); pdf.addFont("BookmanOldStyle-Italic.ttf", BOOKMAN_FAMILY, "italic"); pdf.addFont("BookmanOldStyle-Bold.ttf", BOOKMAN_FAMILY, "bold");