[{"data":1,"prerenderedAt":373},["ShallowReactive",2],{"navigation_docs":3,"-use-cases-project-flow":274,"-use-cases-project-flow-surround":368},[4,63,109,167],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":62},"API","i-lucide-braces","\u002Fapi","api",[10,14,18,22,26,30,34,38,42,46,50,54,58],{"title":11,"path":12,"stem":13},"Html2Pdf Component","\u002Fapi\u002Fcomponent","api\u002F01.component",{"title":15,"path":16,"stem":17},"Core Props","\u002Fapi\u002Fprops","api\u002F02.props",{"title":19,"path":20,"stem":21},"PDF Headers in Vue","\u002Fapi\u002Fheaders","api\u002F03.headers",{"title":23,"path":24,"stem":25},"PDF Footers in Vue","\u002Fapi\u002Ffooters","api\u002F04.footers",{"title":27,"path":28,"stem":29},"Security","\u002Fapi\u002Fsecurity","api\u002F05.security",{"title":31,"path":32,"stem":33},"Watermarks","\u002Fapi\u002Fwatermarks","api\u002F06.watermarks",{"title":35,"path":36,"stem":37},"Metadata & Compression","\u002Fapi\u002Fmetadata-compression","api\u002F07.metadata-compression",{"title":39,"path":40,"stem":41},"Programmatic API","\u002Fapi\u002Fprogrammatic-api","api\u002F08.programmatic-api",{"title":43,"path":44,"stem":45},"Loader, Progress, Metrics, Events & Slots","\u002Fapi\u002Fevents-slots","api\u002F09.events-slots",{"title":47,"path":48,"stem":49},"TypeScript","\u002Fapi\u002Ftypescript","api\u002F10.typescript",{"title":51,"path":52,"stem":53},"PDF Styling & data-pdf-ignore","\u002Fapi\u002Fpdf-styling","api\u002F11.pdf-styling",{"title":55,"path":56,"stem":57},"API Reference","\u002Fapi\u002Ffull-reference","api\u002F12.full-reference",{"title":59,"path":60,"stem":61},"Compose Existing PDF Pages","\u002Fapi\u002Fcomposition","api\u002F13.composition",false,{"title":64,"icon":65,"path":66,"stem":67,"children":68,"page":62},"Get Started","i-lucide-book-open","\u002Fget-started","get-started",[69,73,77,81,85,89,93,97,101,105],{"title":70,"path":71,"stem":72},"Introduction","\u002Fget-started\u002Fintroduction","get-started\u002F01.introduction",{"title":74,"path":75,"stem":76},"Installation","\u002Fget-started\u002Finstallation","get-started\u002F02.installation",{"title":78,"path":79,"stem":80},"Quick Start","\u002Fget-started\u002Fquick-start","get-started\u002F03.quick-start",{"title":82,"path":83,"stem":84},"Rendering Modes","\u002Fget-started\u002Frendering-modes","get-started\u002F04.rendering-modes",{"title":86,"path":87,"stem":88},"Component Registration","\u002Fget-started\u002Fregistration","get-started\u002F05.registration",{"title":90,"path":91,"stem":92},"Preview & Download","\u002Fget-started\u002Fpreview-download","get-started\u002F06.preview-download",{"title":94,"path":95,"stem":96},"Smart PDF Pagination","\u002Fget-started\u002Fpagination","get-started\u002F07.pagination",{"title":98,"path":99,"stem":100},"Nuxt 3 & Nuxt 4 SSR","\u002Fget-started\u002Fnuxt-ssr","get-started\u002F08.nuxt-ssr",{"title":102,"path":103,"stem":104},"Migration Guide","\u002Fget-started\u002Fmigration","get-started\u002F09.migration",{"title":106,"path":107,"stem":108},"PDF Paper Formats and Orientation","\u002Fget-started\u002Fpaper-formats","get-started\u002F10.paper-formats",{"title":110,"icon":111,"path":112,"stem":113,"children":114,"page":62},"Use Cases","i-lucide-flask-conical","\u002Fuse-cases","use-cases",[115,119,123,127,131,135,139,143,147,151,155,159,163],{"title":116,"path":117,"stem":118},"Playground","\u002Fuse-cases\u002Fplayground","use-cases\u002F01.playground",{"title":120,"path":121,"stem":122},"Selectable Text Mode","\u002Fuse-cases\u002Fselectable-text","use-cases\u002F02.selectable-text",{"title":124,"path":125,"stem":126},"Clickable PDF Links","\u002Fuse-cases\u002Fclickable-links","use-cases\u002F03.clickable-links",{"title":128,"path":129,"stem":130},"Images & CORS","\u002Fuse-cases\u002Fimages-cors","use-cases\u002F04.images-cors",{"title":132,"path":133,"stem":134},"Production Guide","\u002Fuse-cases\u002Fproduction-guide","use-cases\u002F05.production-guide",{"title":136,"path":137,"stem":138},"Troubleshooting","\u002Fuse-cases\u002Ftroubleshooting","use-cases\u002F06.troubleshooting",{"title":140,"path":141,"stem":142},"Testing & Browser Support","\u002Fuse-cases\u002Ftesting-browser-support","use-cases\u002F07.testing-browser-support",{"title":144,"path":145,"stem":146},"Performance Engineering","\u002Fuse-cases\u002Fperformance-engineering","use-cases\u002F08.performance-engineering",{"title":148,"path":149,"stem":150},"Full Performance Engineering Report","\u002Fuse-cases\u002Fperformance-report","use-cases\u002F09.performance-report",{"title":152,"path":153,"stem":154},"Community & Feedback","\u002Fuse-cases\u002Fcommunity","use-cases\u002F10.community",{"title":156,"path":157,"stem":158},"Acknowledgements","\u002Fuse-cases\u002Facknowledgements","use-cases\u002F11.acknowledgements",{"title":160,"path":161,"stem":162},"Fonts, Charts, SVG and Image Optimization","\u002Fuse-cases\u002Fmedia-typography","use-cases\u002F12.media-typography",{"title":164,"path":165,"stem":166},"PDF Generation Flow","\u002Fuse-cases\u002Fproject-flow","use-cases\u002F13.project-flow",{"title":168,"path":169,"stem":170,"children":171,"page":62},"Versions","\u002Fversions","versions",[172,244],{"title":173,"path":174,"stem":175,"children":176},"v1 Documentation","\u002Fversions\u002F1.1.1","versions\u002F1.1.1\u002Findex",[177,178,210,224],{"title":173,"path":174,"stem":175},{"title":179,"path":180,"stem":181,"children":182,"page":62},"Api","\u002Fversions\u002F1.1.1\u002Fapi","versions\u002F1.1.1\u002Fapi",[183,186,189,193,197,200,203,206],{"title":11,"path":184,"stem":185},"\u002Fversions\u002F1.1.1\u002Fapi\u002Fcomponent","versions\u002F1.1.1\u002Fapi\u002F01.component",{"title":15,"path":187,"stem":188},"\u002Fversions\u002F1.1.1\u002Fapi\u002Fprops","versions\u002F1.1.1\u002Fapi\u002F02.props",{"title":190,"path":191,"stem":192},"Headers","\u002Fversions\u002F1.1.1\u002Fapi\u002Fheaders","versions\u002F1.1.1\u002Fapi\u002F03.headers",{"title":194,"path":195,"stem":196},"Footers","\u002Fversions\u002F1.1.1\u002Fapi\u002Ffooters","versions\u002F1.1.1\u002Fapi\u002F04.footers",{"title":39,"path":198,"stem":199},"\u002Fversions\u002F1.1.1\u002Fapi\u002Fprogrammatic-api","versions\u002F1.1.1\u002Fapi\u002F08.programmatic-api",{"title":43,"path":201,"stem":202},"\u002Fversions\u002F1.1.1\u002Fapi\u002Fevents-slots","versions\u002F1.1.1\u002Fapi\u002F09.events-slots",{"title":47,"path":204,"stem":205},"\u002Fversions\u002F1.1.1\u002Fapi\u002Ftypescript","versions\u002F1.1.1\u002Fapi\u002F10.typescript",{"title":207,"path":208,"stem":209},"Full README Reference","\u002Fversions\u002F1.1.1\u002Fapi\u002Ffull-reference","versions\u002F1.1.1\u002Fapi\u002F12.full-reference",{"title":64,"path":211,"stem":212,"children":213,"page":62},"\u002Fversions\u002F1.1.1\u002Fget-started","versions\u002F1.1.1\u002Fget-started",[214,217,220],{"title":70,"path":215,"stem":216},"\u002Fversions\u002F1.1.1\u002Fget-started\u002Fintroduction","versions\u002F1.1.1\u002Fget-started\u002F01.introduction",{"title":82,"path":218,"stem":219},"\u002Fversions\u002F1.1.1\u002Fget-started\u002Frendering-modes","versions\u002F1.1.1\u002Fget-started\u002F04.rendering-modes",{"title":221,"path":222,"stem":223},"Pagination","\u002Fversions\u002F1.1.1\u002Fget-started\u002Fpagination","versions\u002F1.1.1\u002Fget-started\u002F07.pagination",{"title":110,"path":225,"stem":226,"children":227,"page":62},"\u002Fversions\u002F1.1.1\u002Fuse-cases","versions\u002F1.1.1\u002Fuse-cases",[228,231,234,237,240],{"title":116,"path":229,"stem":230},"\u002Fversions\u002F1.1.1\u002Fuse-cases\u002Fplayground","versions\u002F1.1.1\u002Fuse-cases\u002F01.playground",{"title":136,"path":232,"stem":233},"\u002Fversions\u002F1.1.1\u002Fuse-cases\u002Ftroubleshooting","versions\u002F1.1.1\u002Fuse-cases\u002F06.troubleshooting",{"title":140,"path":235,"stem":236},"\u002Fversions\u002F1.1.1\u002Fuse-cases\u002Ftesting-browser-support","versions\u002F1.1.1\u002Fuse-cases\u002F07.testing-browser-support",{"title":144,"path":238,"stem":239},"\u002Fversions\u002F1.1.1\u002Fuse-cases\u002Fperformance-engineering","versions\u002F1.1.1\u002Fuse-cases\u002F08.performance-engineering",{"title":241,"path":242,"stem":243},"Vue HTML to PDF Examples","\u002Fversions\u002F1.1.1\u002Fuse-cases\u002Fvue-html-to-pdf","versions\u002F1.1.1\u002Fuse-cases\u002F12.vue-html-to-pdf",{"title":245,"path":246,"stem":247,"children":248},"Full References by Package Version","\u002Fversions\u002Ffull-references","versions\u002Ffull-references\u002Findex",[249,250,256,262,268],{"title":245,"path":246,"stem":247},{"title":251,"path":252,"stem":253,"children":254},"vue-pdf-export 1.1.1 Full Reference","\u002Fversions\u002Ffull-references\u002F1.1.1","versions\u002Ffull-references\u002F1.1.1\u002Findex",[255],{"title":251,"path":252,"stem":253},{"title":257,"path":258,"stem":259,"children":260},"vue-pdf-export 1.2.0 Full Reference","\u002Fversions\u002Ffull-references\u002F1.2.0","versions\u002Ffull-references\u002F1.2.0\u002Findex",[261],{"title":257,"path":258,"stem":259},{"title":263,"path":264,"stem":265,"children":266},"vue-pdf-export 1.2.1 Full Reference","\u002Fversions\u002Ffull-references\u002F1.2.1","versions\u002Ffull-references\u002F1.2.1\u002Findex",[267],{"title":263,"path":264,"stem":265},{"title":269,"path":270,"stem":271,"children":272},"vue-pdf-export 1.3.0 Full Reference","\u002Fversions\u002Ffull-references\u002F1.3.0","versions\u002Ffull-references\u002F1.3.0\u002Findex",[273],{"title":269,"path":270,"stem":271},{"id":275,"title":164,"body":276,"description":359,"extension":360,"links":361,"meta":362,"navigation":363,"path":165,"seo":364,"stem":166,"__hash__":367},"docs\u002Fuse-cases\u002F13.project-flow.md",{"type":277,"value":278,"toc":354},"minimark",[279,295,300,319,338],[280,281,282,286,287,290,291,294],"p",{},[283,284,285],"code",{},"vue-pdf-export"," exposes an ",[283,288,289],{},"Html2Pdf"," component and a ",[283,292,293],{},"useHtml2Pdf"," composable. The component coordinates props, slots, pagination, preview and download. The composable manages generation state, progress, cancellation and output URLs. The core prepares content and chooses a renderer; renderer modules own Canvas or selectable-text output.",[296,297,299],"h2",{"id":298},"from-vue-content-to-pdf-blob","From Vue content to PDF Blob",[301,302,303,307,310,313,316],"ol",{},[304,305,306],"li",{},"The component resolves options and, when a positive pagination height is supplied, plans DOM page breaks. Direct composable calls provide their own prepared element and page breaks.",[304,308,309],{},"Core creates a private export staging clone, applies export-only styles and ignore markers, waits for fonts and images, and prepares chart, SVG and image assets. The live Vue page is left alone.",[304,311,312],{},"Selectable-text mode maps supported DOM text, shapes, images and links into PDF operations. Canvas mode captures page images, one page at a time when markers are available, or uses its classic html2pdf path otherwise.",[304,314,315],{},"Page styling, watermarks, headers, footers, metadata, optional page composition and security are applied to the PDF.",[304,317,318],{},"One serialized Blob feeds preview, download, print or output conversion. Cleanup releases staging content, temporary fonts and media caches; the UI later revokes its owned Blob URLs.",[280,320,321,322,326,327,326,330,333,334,337],{},"The public library defaults to Canvas. The playground can use its own demo defaults. Nuxt imports are SSR safe, but PDF generation needs a browser DOM. See ",[323,324,325],"a",{"href":83},"rendering modes",", ",[323,328,329],{"href":95},"pagination",[323,331,332],{"href":161},"media preparation"," and ",[323,335,336],{"href":40},"programmatic output",".",[280,339,340,341,347,348,353],{},"For maintainers, the ",[323,342,346],{"href":343,"rel":344},"https:\u002F\u002Fgithub.com\u002Fsaurabhzaiswal\u002Fvue-pdf-export\u002Fblob\u002Fv1.3.0\u002Fdocs\u002FPROJECT-FLOW.md",[345],"nofollow","v1.3.0 project-flow map"," identifies the files and scenario traces. The ",[323,349,352],{"href":350,"rel":351},"https:\u002F\u002Fgithub.com\u002Fsaurabhzaiswal\u002Fvue-pdf-export\u002Fblob\u002Fv1.3.0\u002FPROJECT_FLOW.excalidraw",[345],"editable Excalidraw diagram"," shows the same flow in lanes. Use the installed package version when checking consumer behavior.",{"title":355,"searchDepth":356,"depth":356,"links":357},"",2,[358],{"id":298,"depth":356,"text":299},"Trace how vue-pdf-export moves from Vue content through pagination, export staging, Canvas or selectable-text rendering, PDF layers and cleanup.","md",null,{},true,{"title":365,"description":366},"How Vue PDF Export Works: Generation Flow","Understand the vue-pdf-export component, composable, private staging clone, renderer selection, watermarks, PDF output and cleanup.","YKctBHCn8RSRG1e6JsC4Fm6TQ_n5EM9H4Edu0mVHniM",[369,371],{"title":160,"path":161,"stem":162,"description":370,"children":-1},"Prepare Vue charts, SVG, custom fonts and images for browser PDF export. Compare Canvas and selectable-text behavior, CORS recovery and quality controls.",{"title":173,"path":174,"stem":175,"description":372,"children":-1},"Vue PDF export documentation for releases up to 1.1.1, including direct header and footer props and the earlier component API.",1791274870984]