wex5 实战 手写签名与上传

之前做过一个物流演示模块,有一个功能没做完,就是收件人收货后,可以手写签名并上传,替代传统纸张的签名。今天终于做完了。

一 效果演示:

后台图片上传成功

二 设计思路:

运用canvas插件jq-signature,制作手写签名,并通过二进制流方式上传图片

三 代码实现:

1 .下载引入插件jq-signature

手写签名插件,网上有很多,经过多种插件的逐步尝试,只有插件jq-signature达到了我想要的效果;

原因有二:1,支持手机触摸,web,鼠标。其它有的不支持手机触摸。

2,直接转码生成图片,base64编码,便于直接通过二进制流方式上传图片

(注)引入baas.js是为了baassend上传。

2.  界面设计:

上面是一个div,放一个image,用于显示结果,手动为image加id

中间div,是手写输入区域,添加class

3  . 在modelLoad中将输写区域div初始化

4 .  将输写内容和显示内容清空

5 .将手写区域转成data,并上传

6  图片上传后端服务

service服务

java类修改 (具体代码从案例picut中拷贝并修改上传路径)

测试成功!

四 总结:

网上虽然各种插件很多,但是需要和wex5的功能和特点相结合。本例中从众多插件中实际测试后得到jq-signature(注意不是jsignature,这个不支持手机触摸),与wex5的二进制上传相结合,实现了这个组合功能,代码易懂,操作简便。

时间: 2024-08-01 22:13:17

wex5 实战 手写签名与上传的相关文章

jSignature手写签名的实现

jSignature.js是实现手写签名的插件,由于jSignature.js是基于jQuery的,所以使用时需要先引入jQuery.切记!!! 具体使用方法如下: 第一步,下载jSignature.js,从哪下载呢?https://github.com/brinley/jSignature  感谢GitHub 第二步,引入jQuery 和 jSignature.js 第三步,生成html结构 <div id="signature" style="height: 100

Hbuilder开发app实战-识岁03-文件上传

前言 做app不得不谈的问题就是文件上传.用hbuilder开发app让上传变的非常easy. Uploader Uploader模块管理网络上传任务,用于从本地上传各种文件到server,并支持跨域訪问操作. 通过plus.uploader可获取上传管理对象. Uploader上传使用HTTP的POST方式提交数据,数据格式符合Multipart/form-data规范.即rfc1867(Form-based File Upload in HTML)协议. 很多其它内容:Uploader 代码

在Kaggle手写数字数据集上使用Spark MLlib的朴素贝叶斯模型进行手写数字识别

昨天我在Kaggle上下载了一份用于手写数字识别的数据集,想通过最近学习到的一些方法来训练一个模型进行手写数字识别.这些数据集是从28×28像素大小的手写数字灰度图像中得来,其中训练数据第一个元素是具体的手写数字,剩下的784个元素是手写数字灰度图像每个像素的灰度值,范围为[0,255],测试数据则没有训练数据中的第一个元素,只包含784个灰度值.现在我打算使用Spark MLlib中提供的朴素贝叶斯算法来训练模型. 首先来设定Spark上下文的一些参数: val conf = new Spar

图片上传oss--先拿server端签名再上传oss,返回id值

目前项目oss阿里云存储图片,图片上传主要步骤是:前端从服务端拿到签名signature,再上传到oss上busket里,上传成功返回图片id (imgId),最后再给server端: 注:官网上有个例子,也有封装的插件一个,可参考使用,[服务端签名直传并设置上传回调](https://help.aliyun.com/document_detail/31927.html?spm=5176.doc31923.2.2.RseG9d):但因技术有限,未使用: 项目使用angularjs开发的,常用方法

在Kaggle手写数字数据集上使用Spark MLlib的RandomForest进行手写数字识别

昨天我使用Spark MLlib的朴素贝叶斯进行手写数字识别,准确率在0.83左右,今天使用了RandomForest来训练模型,并进行了参数调优. 首先来说说RandomForest 训练分类器时使用到的一些参数: numTrees:随机森林中树的数目.增大这个数值可以减小预测的方差,提高预测试验的准确性,训练时间会线性地随之增长. maxDepth:随机森林中每棵树的深度.增加这个值可以是模型更具表征性和更强大,然而训练也更耗时,更容易过拟合. 在这次的训练过程中,我就是反复调整上面两个参数

.net C#写钉钉上传素材接口解决返回系统繁忙问题

本片主要解决"type=file时是可行的,type=image时不知为何总是提示[系统繁忙]"的问题. 钉钉上传素材的API文档写的比较简单,尤其是http头那块完全没写,demo也没有.net的,杯具啊. 看了一位仁兄的帖子,原理写的很清楚,大家可以参考一下. http://blog.csdn.net/xxdddail/article/details/51983487 但有一个问题没有解决,文章里也提到了,就是type=file时是可行的,type=image时不知为何总是提示[系

写一个限制上传文件大小和格式的jQuery插件

在客户端上传文件,通常需要限制文件的尺寸和格式,最常用的做法是使用某款插件,一些成熟的插件的确界面好看,且功能强大,但美中不足的是:有时候会碰到浏览器兼容问题.本篇就来写一个"原生态"的jQuery插件,使之能限制上传文件的大小和格式. 首先,写一个名称为checkFileTypeAndSize.js的插件.通过判断当前文件的后缀名是否被包含在预先设置所允许的后缀名数组中,来限制文件格式:通过判断当前文件在IE以及其它浏览器下的尺寸是否大于预先设置所允许的最大文件尺寸,来限制文件大小:

《selenium2 python 自动化测试实战》(13)——上传文件

看代码: # coding: utf-8 from selenium import webdriver from time import sleep driver = webdriver.Firefox() driver.get("https://www.cnblogs.com") driver.add_cookie({'name': '.CNBlogsCookie', 'value': 'F956F323DFA5C31BE489C0730C7D891', 'domain': '.cn

Tensorflow实战 手写数字识别(Tensorboard可视化)

一.前言 为了更好的理解Neural Network,本文使用Tensorflow实现一个最简单的神经网络,然后使用MNIST数据集进行测试.同时使用Tensorboard对训练过程进行可视化,算是打响学习Tensorflow的第一枪啦. 看本文之前,希望你已经具备机器学习和深度学习基础. 机器学习基础可以看我的系列博文: https://cuijiahua.com/blog/ml/ 深度学习基础可以看吴恩达老师的公开课: http://mooc.study.163.com/smartSpec/