思路
需要将dom对象在重绘,然后调用.()将数据转换为的data url,可以直接导出图片 。
但是Dom对象不能直接在中绘制,需要先将dom文本转换图片地址,然后在图片加载时将其内容绘制在上 。
一种快捷的方式是将dom文本内嵌在svg对象中,再将svg对象转换为xml/svg data url,这个地址可以作为图片对象的地址直接在页面中展示 。
如图所示,一个svg文本可以作为url的内容在浏览器中展示一张图片
【将页面转换为canvas导出为图片】svg内容如下:
需要注意的是,svg对象下可以直接放置svg对象,也可以放非svg对象,如div p h1等等,但是需要作为的子集,否者不会展示内容
文章插图
在dom文本转换为xml/svg url过程中需要对一些特殊字符做转义,否者地址失效
svg 的第一个svg必须要有命名空间,否者以xml形式显示,当然就不能作为图片地址了
该xml/svg data url可以作为img对象的地址,在页面内展示图片,如图所示
下载这张矢量图片
只需添加一个超链接,指定为图片地址,点击超链接,即可下载该图片
文章插图
需要注意的是,xml/svg data url不能作为下载地址,需要将其转换为地址
一种简单的方法是将xml/svg data url 作为地址的img对象绘制在上,然后调用.(),即可获得
data:image/png;,HGUVx/YQY+SRt//+//+EqP/ERIm/++/+//+/+/++/+i++/D+/+O//ngx9+/P2++ux+//+///LD+/+/tl/+L+a92W+//8k/+Y4t//zWt+Ju+//+++1Q///+vkg///wiV5g+///+/+//k01Tx///+//++/JOB+/yVuY/+/c++Sf5/RnXA/+/Sl/MO////
点击超链接下载为Png图像,自带透明背景
- 苹果Apple Store将采用光伏发电技术
- 受降雪和道路结冰影响 甘肃这些高速公路将临时管制
- 【操作系统】虚拟内存相关分段分页页面置换算法
- 寒潮影响下上海气温将断崖式下降 本周末最高气温仅3℃左右
- 广东迎今冬首股货真价实的寒潮 广州将迎三年来12月最强气温跳水
- 女将Sophie“重回”IBM研究院:这里每天产生25个专利
- 今明天寒潮将持续影响安徽 合肥本周末最低气温降至-7℃
- 河南今天降雪将明显减弱 周末两天气温寒冷降温将超12℃
- 强寒潮即将影响江苏今明天最低温下降超10℃ 南京18日可能有小雨雪
- 山东今起气温持续下降最低-18℃ 今明天烟台威海等地将有大到暴雪