页面数据获取存localstroge的缺点
1、localstroge浏览器内建缓存命中率越高,对localStorage方案越不利。出现存储同一个页面时,数据读写时间响应不够,数据缓存的问题
html2canvas画图一些样式支持问题
1、在使用html2canvas的版本问题的时候,高版本的时候会出现文体整体下落,一些颜色渐变还有伪元素的样式不支持
画图的时候图片加载问题
1、首先因为我们得图片都是存在远端库,所以会有从库里面请求到本地一个过程,很多时候存在网络问题会存在请求失败得情况,或者由于请求得时间长图片未加载完成然后去画图得时候获取不到该图片得数据的情况,所以就采取一些解决方案
2、首先我们的网页上的每个图片,都是需要通过向浏览器发送http请求下载而来,所以网络延时是个存在的问题;而base64的它就是可以解决图片的下载可以不用通过向服务器发送请求,可以随着html的下载的同时下载到本地。节省一个http请求,而且也不会因为跨域问题获取图片失败
3、原理:图片的 base64 编码就是可以将一副图片数据编码成一串字符串,使用该字符串代替图像地址。
图片模糊
base64处理后我们得到的图片有时候会图片模糊,可以通过阿里云的裁剪参数将其放大像素点
批量图片处理
1、当页面上存在多个图片,这个时候需要将它们都转成base64后才能去执行画图,不然也会存在某个图片因为请求到本地失败,而获取不到的现象
2、这个时候采用的是js的异步执行方法Promise
Promise.all()它是指所有的方法执行的结果都成功时才执行的函数
Promise通过then返回一个实例,该实例返回的是resolve或者reject,Promise的三种状态pending(待处理),fulfilled(满足),rejected(驳回)