Docs / Editors / E-Signature
E-Signature
Svelte 5 port of the Extend UI e-signature. Draw on the pad with signature_pad, place the signature onto the PDF at a chosen
position and scale with pdf-lib, then download the signed document.
Coordinates are PDF points measured from the bottom-left page corner.
Fixture document
Draw your signature above
Loading PDF…
Dark mode
Draw your signature above
Loading PDF…
Empty source
Draw your signature above
Choose a PDF to sign
Pass a PDF URL with the file prop.
Differences from upstream
- Exported as both
ESignatureand the upstream nameESignatureBlock. The upstreamfileprop is accepted;srcis kept as an alias (filewins).classNameandclassare both accepted. - One signature, drawn on an inline pad and placed with numeric position, size, and scale controls, instead of the signature dialog and the draggable field overlay on the shared PDF viewer.
- Not ported: the resizable two-pane layout, the signature field list panel, initials, date, checkbox, and text fields, recipients and field ownership, required-field validation, and signed/pending/declined states.
- The signed download is named
<name>-signed.pdfinstead of upstream's fixedsigned-document.pdf. - Dark mode is set by the parent through
isDark; the block has no theme switch, soonIsDarkChangeis never called. - Port additions:
fileName,page, bindablepositionX/positionY/signatureWidth/signatureHeight/scale,penColor,backgroundColor,showDownload, and event callbacks. Left unset, position and size follow upstream's default field scaled to the active page, as upstream's download does. - Port-only exports, the component under its port name, and the placement and PDF stamping helpers and types:
ESignature,ESignatureProps,clampPage,clampScale,dataUrlToBytes,DEFAULT_POSITION_X,DEFAULT_POSITION_Y,DEFAULT_SCALE,DEFAULT_SIGNATURE_HEIGHT,DEFAULT_SIGNATURE_WIDTH,defaultPlacementForPage,embedSignaturePng,ensurePdfExtension,getSignedDownloadFileName,MAX_SCALE,MIN_SCALE,resolvePlacement,SignaturePlacement, andSignaturePlacementInput.