html2 canvas实现浏览器截图


当前第2页 返回上一页

1、从canvas中直接提取图片元数据


1

2

3

// 图片导出为 png 格式

      var type = 'png';

      var imgData = canvas.toDataURL(type);

2、将mime-type改为image/octet-stream,强制让浏览器直接download


1

2

3

4

5

6

7

8

9

10

11

12

13

/**

 * 获取mimeType

 * @param  {String} type the old mime-type

 * @return the new mime-type

 */

var _fixType = function(type) {

    type = type.toLowerCase().replace(/jpg/i, 'jpeg');

    var r = type.match(/png|jpeg|bmp|gif/)[0];

    return 'image/' + r;

};

    

// 加工image data,替换mime type

imgData = imgData.replace(_fixType(type),'image/octet-stream');

3、图片download到本地


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

/**

 * 在本地进行文件保存

 * @param  {String} data     要保存到本地的图片数据

 * @param  {String} filename 文件名

 */

var saveFile = function(data, filename){

    var save_link = document.createElementNS('http://www.w3.org/1999/xhtml', 'a');

    save_link.href = data;

    save_link.download = filename;

    

    var event = document.createEvent('MouseEvents');

    event.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);

    save_link.dispatchEvent(event);

};

    

// 下载后的文件名

var filename = 'baidufe_' + (new Date()).getTime() + '.' + type;

// download

saveFile(imgData,filename);

相关推荐:

html5浏览器截图的示例

以上就是html2 canvas实现浏览器截图的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

使用html5 canvas封装一个echarts实现不了的饼图

怎样用canvas来绘制彩色七巧板

canvas波浪效果的实现代码

html2 canvas实现浏览器截图

canvas的手绘风格图形库rough.js

关于老版本的浏览器不兼容h5和c3的处理方法

canvas实现二维码和图片合成的示例代码

h5 canvas实现粒子时钟的详细方法

用h5的canvas做恐怖动画

html5 canvas image的图文代码详解(一)

更多相关阅读请进入《Firefox》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...