🚀 新規事業
signature-pad
最終更新 2026年05月09日 / 40_新規事業/SCALE_Build/カタログ/機能集/signature-pad.md
電子署名(手書き)
用途
Canvas で手書き署名入力 → PNG/SVG出力。契約書添付に。
特徴
- タッチ/マウス対応
- クリア
- 保存
コード(コピペ用)
'use client';
import SignaturePad from 'signature_pad';
import { useEffect, useRef } from 'react';
export function SignatureInput({ onSave }: { onSave: (dataUrl: string) => void }) {
const ref = useRef<HTMLCanvasElement>(null);
const padRef = useRef<SignaturePad | null>(null);
useEffect(() => {
if (ref.current) padRef.current = new SignaturePad(ref.current);
}, []);
return (
<div>
<canvas ref={ref} width={400} height={150} style={{ border: '1px solid #333' }} />
<button onClick={() => padRef.current?.clear()}>クリア</button>
<button onClick={() => onSave(padRef.current!.toDataURL('image/png'))}>保存</button>
</div>
);
}
使い方
対象プロジェクトに該当ファイルをコピーして、props を流し込むだけ。
注意事項
- 依存パッケージを忘れず追加