js实现canvas保存图片为png格式并下载到本地的方法


Posted in Javascript onAugust 31, 2017

整理文档,搜刮出一个js实现canvas保存图片为png格式并下载到本地的方法,稍微整理精简一下做下分享。

1.canvas 保存图片

2.下载到本地

function base64Img2Blob(code){

        var parts = code.split(';base64,');

        var contentType = parts[0].split(':')[1];

        var raw = window.atob(parts[1]);

        var rawLength = raw.length;

 

        var uInt8Array = new Uint8Array(rawLength);

 

        for (var i = 0; i < rawLength; ++i) {

         uInt8Array[i] = raw.charCodeAt(i);

        }

 

        return new Blob([uInt8Array], {type: contentType}); 

      }

      function downloadFile(fileName, content){

        

        var aLink = document.createElement('a');

        var blob = base64Img2Blob(content); //new Blob([content]);

        

        var evt = document.createEvent("HTMLEvents");

        evt.initEvent("click", false, false);//initEvent 不加后两个参数在FF下会报错

        aLink.download = fileName;

        aLink.href = URL.createObjectURL(blob);

     

        aLink.dispatchEvent(evt);

      }      

downloadFile('ship.png', canvas.toDataURL("image/png"));

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
用ADODB.Stream转换
Jan 22 Javascript
Google 静态地图API实现代码
Nov 19 Javascript
基于jQuery实现的Ajax 验证用户名是否存在的实现代码
Apr 06 Javascript
jquery validate 自定义验证方法介绍 日期验证
Feb 27 Javascript
jQuery 获取、设置HTML或TEXT内容的两种方法
May 23 Javascript
JavaScript的null和undefined区别示例介绍
Sep 15 Javascript
cocos2dx骨骼动画Armature源码剖析(三)
Sep 08 Javascript
AngularJS入门教程之链接与图片模板详解
Aug 19 Javascript
脚手架vue-cli工程webpack的基本用法详解
Sep 29 Javascript
发布一款npm包帮助理解npm的使用
Jan 03 Javascript
详解vue挂载到dom上会发生什么
Jan 20 Javascript
简单了解JS打开url的方法
Feb 21 Javascript
js实现canvas图片与img图片的相互转换的示例
Aug 31 #Javascript
vue实现全选和反选功能
Aug 31 #Javascript
浅谈Vue 初始化性能优化
Aug 31 #Javascript
Vue keep-alive实践总结(推荐)
Aug 31 #Javascript
深入理解vue-router之keep-alive
Aug 31 #Javascript
vue-router 导航钩子的具体使用方法
Aug 31 #Javascript
浅谈express 中间件机制及实现原理
Aug 31 #Javascript
You might like
php程序员应具有的7种能力小结
2014/11/27 PHP
php根据日期或时间戳获取星座信息和生肖等信息
2015/10/20 PHP
php json_encode与json_decode详解及实例
2016/12/13 PHP
PHP会话控制实例分析
2016/12/24 PHP
Kindeditor编辑器添加图片上传水印功能(php代码)
2017/08/03 PHP
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
2017/11/16 PHP
30个最佳jQuery Lightbox效果插件分享
2011/04/11 Javascript
jquery 快速回到页首的方法
2013/12/05 Javascript
JS实现让网页背景图片斜向移动的方法
2015/02/25 Javascript
javascript中call和apply的用法示例分析
2015/04/02 Javascript
JavaScript中setUTCMilliseconds()方法的使用详解
2015/06/12 Javascript
jquery实现Slide Out Navigation滑出式菜单效果代码
2015/09/07 Javascript
引用jquery框架后出错的解决方法
2016/08/09 Javascript
vue中mint-ui环境搭建详细介绍
2017/04/06 Javascript
angular1配合gulp和bower的使用教程
2018/01/19 Javascript
Vue 项目代理设置的优化
2018/04/17 Javascript
Node.js JSON模块用法实例分析
2019/01/04 Javascript
详解如何更好的使用module vuex
2019/03/27 Javascript
微信小程序 腾讯地图显示偏差问题解决
2019/07/27 Javascript
通过实例解析JavaScript for in及for of区别
2020/06/15 Javascript
OpenLayer3自定义测量控件MeasureTool
2020/09/28 Javascript
解决tensorflow1.x版本加载saver.restore目录报错的问题
2018/07/26 Python
对python pandas读取剪贴板内容的方法详解
2019/01/24 Python
python 随机生成10位数密码的实现代码
2019/06/27 Python
使用pycharm在本地开发并实时同步到服务器
2019/08/02 Python
centos7中安装python3.6.4的教程
2019/12/11 Python
python实现将json多行数据传入到mysql中使用
2019/12/31 Python
Contém1g官网:巴西彩妆品牌
2020/01/17 全球购物
银行实习生自我鉴定范文
2013/09/19 职场文书
行政经理的岗位职责
2013/11/23 职场文书
遗体告别仪式答谢词
2014/01/23 职场文书
幼儿园安全生产月活动总结
2014/07/05 职场文书
单位法定代表人授权委托书
2014/09/20 职场文书
2015自愿离婚协议书范本
2015/01/28 职场文书
我的1919观后感
2015/06/03 职场文书
社区结对共建协议书
2016/03/23 职场文书