hopeful
This commit is contained in:
@@ -1,8 +1,15 @@
|
||||
import puppeteer from "puppeteer";
|
||||
import puppeteer, { PaperFormat } from "puppeteer";
|
||||
|
||||
import { env } from "../config/env.js";
|
||||
|
||||
export async function renderPdf(html: string) {
|
||||
interface PdfOptions {
|
||||
format?: PaperFormat;
|
||||
width?: string;
|
||||
height?: string;
|
||||
margin?: { top?: string; right?: string; bottom?: string; left?: string };
|
||||
}
|
||||
|
||||
export async function renderPdf(html: string, options?: PdfOptions) {
|
||||
const browser = await puppeteer.launch({
|
||||
executablePath: env.PUPPETEER_EXECUTABLE_PATH,
|
||||
headless: true,
|
||||
@@ -14,7 +21,10 @@ export async function renderPdf(html: string) {
|
||||
await page.setContent(html, { waitUntil: "networkidle0" });
|
||||
|
||||
const pdf = await page.pdf({
|
||||
format: "A4",
|
||||
format: options?.width || options?.height ? undefined : (options?.format || "A4"),
|
||||
width: options?.width,
|
||||
height: options?.height,
|
||||
margin: options?.margin,
|
||||
printBackground: true,
|
||||
preferCSSPageSize: true,
|
||||
});
|
||||
|
||||
@@ -219,7 +219,7 @@ function buildShippingLabelPdf(options: {
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
`);
|
||||
`, { width: "4in", height: "6in", margin: { top: "0", right: "0", bottom: "0", left: "0" } });
|
||||
}
|
||||
|
||||
function buildBillOfLadingPdf(options: {
|
||||
|
||||
Reference in New Issue
Block a user