【发布时间】:2018-08-22 23:04:52
【问题描述】:
我正在使用 angular2-signaturepad 在 angular 6 应用程序中收集数字签名。有些用户只是画一个简单的点或直线。是否可以要求用户输入多个点或线?我不是要验证姓名或完整签名,只是他们画的不仅仅是一个小签名。提前谢谢你。
【问题讨论】:
标签: javascript angular signaturepad
我正在使用 angular2-signaturepad 在 angular 6 应用程序中收集数字签名。有些用户只是画一个简单的点或直线。是否可以要求用户输入多个点或线?我不是要验证姓名或完整签名,只是他们画的不仅仅是一个小签名。提前谢谢你。
【问题讨论】:
标签: javascript angular signaturepad
您还可以验证signaturePad.toData() 中的最小 xy 点数。这是一个查找最小点数的示例验证方法。
hasComplexity(pad: SignaturePad, complexity?: number) {
if (!complexity) {
complexity = 10;
}
const points = pad.toData();
const pointCount = [].concat.apply([], points).length;
return points && pointCount >= complexity;
}
使用示例:
const isValid = this.hasComplexity(this.pad, 10);
【讨论】:
我的建议是使用画布并检查像素
var p = c.getImageData(x, y, 1, 1).data;
var hex = "#" + ("000000" + rgbToHex(p[0], p[1], p[2])).slice(-6);
所以你应该检查有多少不是空的。
【讨论】: