24

我的公司正在考虑为现场数据输入提供一个轻量级的移动网站(我们已经有一个胖客户端移动应用程序)。一个硬性要求是我们必须能够捕获签名。

是否有任何现有技术用于捕获签名,特别是在移动网络浏览器内运行的网页内,跨越各种移动设备/网络浏览器? 我只要求浏览器内的解决方案,而不是胖客户端。

出于显而易见的原因,该设备将需要具有触摸屏。

当然,有很多很多不同的移动浏览器具有各种各样的功能。理想的解决方案将支持尽可能多的浏览器,并根据浏览器功能优雅地降级。

我已经知道某些版本的 Flash 可能会提供此类所需的绘图 API,假设所需设备的浏览器支持 Flash。

我还知道用于Windows Mobile 设备上的 Pocket IE 的第三方 ActiveX/OCX 控件。用户在使用前需要在浏览器中手动下载/安装控件。不幸,但可以接受。

我个人并不知道许多支持托管 Java 小程序的移动浏览器,但可能有一些。同样,基于对各种 Java API 的支持,这也许是一种可能的途径。

如果引擎和处理器在设备上足够强大,Javascript可以做到这一点。

最后,这里完全是白日梦,也许可以让用户使用移动设备的相机在一张普通的纸上为签名拍照,并以某种方式将其视为有效签名。但是,这将产生一个位图图像,而不是我可能在所有其他情况下收集的矢量。此外,如果不是不可能/不合理的话,将通过相机应用程序拍摄照片并使用网络浏览器应用程序上传,同时将该特定图像与正在捕获的其余数据相关联,这将是非常困难的。

谢谢。

4

12 回答 12

20

现在有一个 jQuery 插件可以做到这一点 - > http://thomasjbradley.ca/lab/signature-pad

截至 2016 年 3 月 17 日,上一个链接处于非活动状态,但相关存储库位于 GitHub 上:https ://github.com/thomasjbradley/signature-pad

于 2010-11-11T11:12:20.290 回答
2

我认为图片的想法非常聪明,但我会更进一步。一些移动设备(尤其是手机)甚至不会在浏览器中上传文件。我会生成一个特定于操作的电子邮件地址,例如某种交易 ID 和用户 ID 的哈希值,并允许它作为电子邮件附件发送。这应该会捕获非常广泛的客户,并且不会增加可怕的复杂性。

于 2008-10-01T20:14:31.797 回答
2

thomas j bradley 的 jQuery 签名板插件很棒而且很容易实现。

于 2010-12-01T19:01:58.330 回答
1

首先,我是一名 C++ 开发人员,而不是 Web 开发人员,但我已经在 C++/MFC 中编写并部署了一个 Windows Mobile 签名捕获例程。如果您想使用或翻译代码,请告诉我,我将在此处发布。它不是特别优雅,但可以完成工作。基本上,您需要可用的按钮单击和鼠标移动消息。

已经走上了这条路,我的结论是,这不是对技术的充分利用。屏幕在签名捕获区域容易磨损且无响应,使其不仅无法用于签名捕获,而且无法用于其他操作。我们的经验是,对于移动销售人员类型的应用程序,它将手持设备的使用寿命限制在一年左右,导致用户不满意。

相机的想法似乎更聪明,不会破坏设备。IMO 你也会得到更好的签名,触摸屏的签名很糟糕。

于 2008-10-01T08:14:55.270 回答
1

是的,找到了,这适用于 Android 2.1、2.2、iPhone。它工作得非常好,并带有用于将 JSON 保存的坐标转换为图像的 php 代码。 http://thomasjbradley.ca/lab/signature-pad

于 2010-11-26T23:18:45.037 回答
1

http://mysignature.brinkster.net - 不适用于移动浏览器 http://thomasjbradley.ca/lab/signature-pad - 不适用于 IE。它具有画布和闪存技术。IE 的画布标签有问题。

于 2011-11-17T22:32:10.940 回答
1

所有这些答案都已过时。

目前最好的图书馆是 - https://github.com/szimek/signature_pad

thomas bradley 的签名板不再维护

于 2016-12-15T00:27:59.437 回答
0

如果不在网页上嵌入某些内容,唯一的方法就是使用 JavaScript。

不幸的是,大多数移动浏览器不支持 JavaScript,而且支持的浏览器也不是特别快。

我认为不可能基于当前存在的大多数设备创建通用解决方案。

于 2008-10-03T18:56:10.017 回答
0

如果你说的是让它在各种移动浏览器上工作,我认为这在技术上是不可能的。大多数手机至少可以很容易地通过电子邮件发送图片,因此您可以随时将其发送到附件被转储到某处的某个帐户。尽管如此,您仍必须在主题中手动输入一些标识符。

于 2008-09-25T18:00:19.403 回答
0

如果移动浏览器支持 javascript,那么您也许可以在某些触摸屏设备上执行此操作。否则必须使用插件、java、flash 或其他类似方法来完成。

使用 javascript,您可以查看“鼠标”在哪里。在某些设备上,如果用户使用触控笔在屏幕上按下,您可以捕捉鼠标移动并记录它们遵循的模式(签名)。

我怀疑某些移动浏览器不会将该信息传递到 javascript - 他们可能只会传递点击...

可能需要进行一些测试。

-亚当

于 2008-09-25T18:04:21.157 回答
0

带有 Flash 的 Canvas(通过 FlashCanvas)与 jSignature 一起为我们工作得很好。http://willowsystems.github.com/jSignature/

MIT + Works(专门为运行而编写)在任何有 Canvas 或 Flash 的地方。+ 在 iPad、iPhone、Android 平板电脑、手机上测试。

于 2012-06-01T20:00:43.917 回答
0

您可能需要考虑开源 jQuery 插件:https ://github.com/applicius/jquery.signfield/

于 2014-08-04T18:10:17.680 回答