温锐
温锐
  • 发布:2015-09-19 10:31
  • 更新:2020-07-23 12:13
  • 阅读:24392

网页中截图保存到本地 获取某个div或者某一块区域(纯js实现)

分类:HTML5+

项目中需要使用到截屏的功能,但是官方的的给出的截图好像只能截取某个webview官方截图api文档 但是在某些需求中要求只截取某一部分而不是整个屏幕 或者说只截取某个div里面的内容 解决思路来了:首选通过js截取到某个div 或者任何一个标签包含的内容:html2canvas 然后把截取到的转换为Data格式,再利用官方的Bitmap对象保存在本地或者做其它的操作

   //生成base64图片数据  
                               var dataUrl = canvas.toDataURL();  
                              // console.log(dataUrl);  这里千万不要像这样打印出来否则HBuilder会报错的  可能输出的内容太多了吧  
                               var b=new plus.nativeObj.Bitmap();  

                                b.loadBase64Data(dataUrl,function(){  
                                    console.log("创建成功");  
                                },function(){  
                                    console.log("创建失败");  
                                });  
                                b.save('_www/img1.jpg',{overwrite:true},function(){  
                                    console.log("保存成功");  
                                },function(){  
                                    console.log("保存失败");  
                                });  

                                plus.gallery.save( '_www/img1.jpg', function () {  
                                        console.log( "保存图片到相册成功" );  
                                    },function(){  
                                        console.log( "保存图片到相册失败" );

完整项目demo:

8 关注 分享
猫猫猫猫 年二十二 常山赵子龙 啸天 lvc 幽冥法师 7***@qq.com 1***@qq.com

要回复文章请先登录注册

8***@qq.com

8***@qq.com

回复 NEWcentos :
可以用的 ,可以看我的帖子,点个赞谢谢
2020-07-23 12:13
chinahappybeer

chinahappybeer

那请问ios用什么比较好呢?
2020-02-07 03:32
冲刺的豆豆

冲刺的豆豆

回复 NEWcentos :
那请问ios用什么比较好呢?
2020-01-13 14:30
NEWcentos

NEWcentos

最近canvas.toDataURL在ios失效了 但是在安卓依旧可以用。
2019-10-17 14:48
旺仔牛奶

旺仔牛奶

有没有人知道如何保存到指定相册目录啊 比如保存到系统相册目录 DCIM/Camera/ 下面
2019-08-28 11:32
h***@163.com

h***@163.com

plus.gallery.save 兼容性有问题,谨慎使用

在小米 MIX2S 上调用正常

在 小米4上调用报错
{"code":12,"message":"UNKOWN ERROR"}
2018-11-12 12:13
小伍

小伍

谢谢~
2018-06-11 21:12
x***@126.com

x***@126.com

正好需要,感谢分享
2018-01-26 09:11
m***@bocosoft.com.cn

m***@bocosoft.com.cn

谢谢 功能完善了
2017-08-18 15:21
陈浩

陈浩

html2canvas集成在框架中的话,只能IOS能使用,android不能用。在android中,onrendered: function(canvas)这个返回值canvas是空的,在IOS中却是正常的。
2016-07-29 10:35