时间:2021-07-01 10:21:17 帮助过:11人阅读
由于我的项目有上传屏幕截图这样的需求,为了用户体验更佳,减少操作步骤,我在网上搜了一遍之后,找到了一些眉目。为了便于复用和共享,我又对该功能做了一些封装,于是便有了这个插件 screenshot-paste。运行效果如下图:
插件调用示例:
screenshot paste example
插件依赖:
从调用示例中,我们可以看到,这个插件依赖如下:
1)需要引用jquery
2)插件本身screenshot-paste.js
3)需要一个textbox和图片预览div
插件可配置项:
插件方法:
该插件目前只有一个方法 getImgData,调用示例如下:
var imgData = $('#demo').screenshotPaste('getImgData');
值得一提的是,该方法返回的是img的src属性里面的内容,即base64编码的图片数据内容。
这样的数据上传到服务器之后,需要用base64解码,解码示例代码如下(C#版):
private string UploadImage(string imageData) { imageData = imageData.Remove(0, imageData.IndexOf(',') + 1);//字符串中截图base64编码数据 var bytes = Convert.FromBase64String(imageData);//base64解码 var url = BLLOrderImg.UploadImg(bytes);//本行及以下代码行的内容可忽略 return url; }
插件源码:
以上就是本文的全部内容,希望对大家的学习有所帮助。