Nuxt3 PDFEasy Module
- For PDFEasy docs, click here
Setup
npm i nuxt-pdfeasy
// nuxt.config.ts
modules: [
'nuxt-pdfeasy'
]
Example
<template>
<iframe id="pdf" />
</template>
<script setup>
import { useNuxtApp } from '#app';
const { $pdf } = useNuxtApp()
$pdf.new({
plugins: [
{
page: [
// simple counter footer
({ Text }, context, current, total) => {
// render in every page
Text(`${current}/${total}`, { fontSize: 20 }, {
x: context.width / 2,
y: context.height - context.margins.bottom
})
},
// simple header
({ Text }, context, current, total) => {
// render in every page
Text('A Simple Header', {}, {
x: context.width / 2,
y: context.margins.top - 20
})
}
]
}
]
})
$pdf.add([
{ raw: 'Hello NUXT!', text: { fontSize: 22 }},
])
$pdf.run().then(blob => {
const iframe = document.querySelector('#pdf')
iframe.src = blob
}).catch((err) => {
console.error(err)
})
</script>