1

WPF InkCanvasコントロールを使用して、TabletPCアプリケーションで署名をキャプチャしています。

私の要件の1つは、アプリケーションが実際に「署名」されているかどうかを検証することです。現在、InkCanvasのStrokesコレクションをチェックしてこれを行っています。ストロークが0の場合、ユーザーが「署名」していないことがわかります。

ただし、ユーザーが1つのスラッシュ、または1つのドットを入力した場合、これはストロークとしてカウントされ、署名が実際には有効ではない場合でも、検証テストに合格します。

このためのより良いテストを構築する方法についてのアイデアはありますか?確かに、有効な署名とそうでない署名の使用例はかなりあいまいですが、明らかに悪い署名を排除しようと思います。

それとも、これは単純な方法で解決できないのでしょうか?

4

1 に答える 1

1

ここで概説されているような、署名が既存の署名と有効に一致するかどうかをテストするアルゴリズムがあることは知っています。ただし、そもそも何かが署名であるかどうかを調べることは、はるかに複雑なようです。

ウィキペディアから:

法的文書では、文盲の署名者は「マーク」(多くの場合「X」ですが、個人的な記号の場合もあります) を作成でき
ます...
言語がアルファベット以外の書記体系を使用するいくつかの文化では、署名自体の西洋の概念を共有していません。自分の名前を「署名」することは、標準的な方法で自分の名前を「書く」ことの結果と何ら変わらない書面による製品をもたらす。これらの言語では、書くことまたは署名することは、同じ書かれた文字を伴います。そのような 3 つの例は、中国語、日本語、および韓国語です。

これはIntelligent Character Recognitionを使用してアプローチできますが、署名に文字が含まれているように見えることはめったにないこともわかっています。UPS や FedEx パッケージのシンギング パッドを使用している場合は、さらに悪化します。次回パッケージが到着したときは、ダッシュとドットだけで署名して、それが許可されるかどうかを確認します(すでにそれに十分近いので、許可すると思います)。

署名は認識可能な単語や文字と一致しない可能性があるため、現在よりもさらに「検証」しようとすると、実際には有効な署名が破棄される可能性があります。なんらかの理由でドット以外の何かがあるかどうかを知る必要がある場合は、署名が特定のサイズの長方形を埋める代わりに、検証を検討してください。それでも、無効になってはならない結果が無効になる可能性があるため、検証を追加しようとする場合は、有効な署名の期待を完全に文書化するようにしてください。

于 2009-07-02T22:07:19.947 に答える