Signature Pad

A canvas element for capturing handwritten signatures or drawings via mouse or touch.

Install

npx @vultra/cli add signature-pad

Usage

<script>
  import { SignaturePad, Button } from '@vultra/ui';

  let pad;

  function save() {
    const dataUrl = pad.toDataURL();
    console.log('Signature:', dataUrl);
  }
</script>

<SignaturePad bind:this={pad} />

<Button onclick={save}>Save Signature</Button>
<Button variant="outline" onclick={() => pad.clear()}>Clear</Button>

Props

PropTypeDefaultDescription
widthnumber400Canvas width in pixels
heightnumber200Canvas height in pixels
penColorstring‘#000000’Stroke color
backgroundColorstring‘#ffffff’Canvas background
classstring-Additional CSS classes

Methods

MethodDescription
clear()Clear the canvas
toDataURL()Export signature as data URL

Notes

  • Supports mouse, touch, and stylus input.
  • Exports as PNG data URL for server upload.