PDF signer
Draw a signature and stamp it on page 1 of a local PDF with pdf-lib. PNG embed at 150×50 pt. Not a certificate signature.
Docify's PDF signer stamps a canvas drawing onto page 1 of a local PDF in the browser with pdf-lib. The pad is captured with canvas.toDataURL() (PNG), embedded via embedPng, and drawn at x: 50, y: 50 (150×50 pt, origin bottom-left). It is a visual stamp, not a certificate-based digital signature. Nothing is uploaded.
The signature is placed on the first page. Nothing is uploaded.
Document
No PDF uploaded
Signature
Draw with your mouse or trackpad
PDF waitingSignature waiting
How it works
- Choose a file in the
application/pdfpicker. Anything else is rejected withalert(). Preview is aniframepointed atURL.createObjectURL. Nothing is sent to a server. - The pad is a 500×200 canvas. The 2d context uses black stroke, line width 2, and round caps. Mouse down/move/up map through
getBoundingClientRect. There are no touch handlers. Clear wipes the canvas and drops the stored data URL. - Sign and download reads the file with
arrayBuffer()andPDFDocument.loadfrom pdf-lib. OnlygetPages()[0]is used. The drawing iscanvas.toDataURL()(default PNG), fetched to bytes, and embedded withembedPng. - The PNG is drawn at
x: 50, y: 50with width 150 and height 50 (PDF user space; origin at the bottom left).pdfDoc.save()becomes anapplication/pdfdownload namedsigned-document.pdf. This is a visual stamp, not a PKCS#7 or PAdES signature, and it does not let you move the image, sign later pages, or upload a signature file.
FAQ
- Does this tool upload my PDF?
- No. Preview uses a local object URL, the canvas stays in the page, and pdf-lib reads the file with arrayBuffer in your browser. The page does not send the PDF or the signature to a server.
- Is this a certificate-based digital signature?
- No. Sign and download embeds a PNG of the canvas drawing with pdf-lib embedPng and drawImage. It does not create a PKCS#7 or PAdES signature, attach a certificate, or prove identity. Treat it as a visual stamp only.
- Where is the signature placed?
- Only on the first page from getPages()[0]. pdf-lib draws it at x: 50, y: 50 (user space, origin at the bottom left) with width 150 and height 50. You cannot drag the stamp, pick another page, or upload a signature image.
- How do I draw the signature?
- The pad is a 500×200 canvas with a 2d context (black stroke, line width 2, round caps). Mouse down/move/up events map through getBoundingClientRect. The stamp is canvas.toDataURL() (default PNG). There are no touch handlers, and this is not a typed-name or uploaded-image signer.