fix: handle signature annotations

This commit is contained in:
Mythie
2024-03-03 11:36:28 +11:00
parent 73aae6f1e3
commit a17d4a2a39
2 changed files with 40 additions and 3 deletions

View File

@ -1,5 +1,13 @@
import signer from 'node-signpdf';
import { PDFArray, PDFDocument, PDFHexString, PDFName, PDFNumber, PDFString } from 'pdf-lib';
import {
PDFArray,
PDFDocument,
PDFHexString,
PDFName,
PDFNumber,
PDFString,
rectangle,
} from 'pdf-lib';
export type AddSigningPlaceholderOptions = {
pdf: Buffer;
@ -39,6 +47,12 @@ export const addSigningPlaceholder = async ({ pdf }: AddSigningPlaceholderOption
P: pages[0].ref,
});
const xobj = widget.context.formXObject([rectangle(0, 0, 0, 0)]);
const streamRef = widget.context.register(xobj);
widget.set(PDFName.of('AP'), widget.context.obj({ N: streamRef }));
const widgetRef = doc.context.register(widget);
let widgets = pages[0].node.get(PDFName.of('Annots'));