您现在的位置是:网站首页> 编程资料编程资料
html5中svg canvas和图片之间相互转化思路代码html5实现点击弹出图片功能html5 录制mp3音频支持采样率和比特率设置html5表单的required属性使用html5调用摄像头实例代码HTML5页面音频自动播放的实现方式Html5大屏数据可视化开发的实现html实现弹窗的实例HTML5来实现本地文件读取和写入的实现方法HTML 罗盘式时钟的实现HTML5简单实现添加背景音乐的几种方法
2021-09-01
1152人已围观
简介 需要把网页部分内容做正文,并把原网页转成pdf作为附件,发送邮件给boss,将svg转成canvas显示,但是后来发现canvas也无法正常显示,最后不得已,只能将canvas标签再一次转成图片格式
最近有个需求,需要把网页部分内容做正文,并把原网页转成pdf作为附件,发送邮件给boss。由于我们这是报表类型的网站,在html5中控件开发无非就是canvas或者是svg,这里我们有几个控件是用svg,而svg在FoxMail邮件正文中无法正常显示,于是考虑将svg转成canvas显示,但是后来发现canvas也无法正常显示,最后不得已,只能将canvas标签再一次转成图片格式,终于解决了这个问题。下面就简单介绍一下实现过程。如下是一个svg标签
首先需要获取svg标签以及内容:
var svgHtml = svgContainer.innerHTML();
将svg转成canvas需要用到google的一个插件canvg,可以上官网下载,也可以直接远程引用进来
接下来就是调用该插件的canvg(canvasId,svgHtml)方法来转成canvas,这个方法第一个参数就是canvas标签的id,第二个自然就是svg标签内容了,就这样,svg转成了canvas
然后就是将canvas转成图片了,这个更加简单了
var imgSrc = document.getElementById(canvasId).toDataUrl("image/png");//这其实是将canvas转成了图片,并返回图片的所有内容数据,如下即可显示图片:

这就是从svg->canvas->image的实现方法了,这个还是很有用的,因为不同的浏览器对svg和canvas的支持不同,这样的话,至少我们的控件总有方式能够正确显示,即使我们最后只能使用图片。
复制代码
代码如下:首先需要获取svg标签以及内容:
var svgHtml = svgContainer.innerHTML();
将svg转成canvas需要用到google的一个插件canvg,可以上官网下载,也可以直接远程引用进来
接下来就是调用该插件的canvg(canvasId,svgHtml)方法来转成canvas,这个方法第一个参数就是canvas标签的id,第二个自然就是svg标签内容了,就这样,svg转成了canvas
然后就是将canvas转成图片了,这个更加简单了
var imgSrc = document.getElementById(canvasId).toDataUrl("image/png");//这其实是将canvas转成了图片,并返回图片的所有内容数据,如下即可显示图片:
复制代码
代码如下:这就是从svg->canvas->image的实现方法了,这个还是很有用的,因为不同的浏览器对svg和canvas的支持不同,这样的话,至少我们的控件总有方式能够正确显示,即使我们最后只能使用图片。
相关内容
- Html5无刷新修改browser Url的方法详解HTML5之pushstate、popstate操作history,无刷新改变当前urlHTML5无刷新改变当前url的代码基于HTML实现表单提交后不刷新页面 HTML5 History API 实现无刷新跳转 仿163网盘无刷新文件上传 for Php HTML网页中无刷新的更换CSS样式-CSS教程-网页制作-网页教学网HTML5实现无刷新修改URL的方法
- html特殊符号示例 html特殊字符编码对照表浅谈html特殊字符 编码css3 content:"我是特殊符号"网页html 特殊符号 html特殊字符对照表html中显示特殊符号(附带特殊字符对应表)
- html5使用canvas实现跟随光标跳动的火焰效果利用css实现浮雕效果示例代码纯CSS3绘制打火机动画火焰效果分享16款燃烧的火焰效果英文字体大宝库CSS3实现文字浮雕效果,镂刻效果,火焰文字
- html5基础标签(html5视频标签 html5新标签用法)html5各种页面切换效果和模态对话框用法总结HTML5中drawImage用法分析HTML5 embed标签定义和用法详解HTML5本地存储localStorage、sessionStorage基本用法、遍历操作、异常html5跨域通讯之postMessage的用法总结Html5新标签解释及用法 如何避免常见的6种HTML5错误用法
- html5的canvas实现3d雪花飘舞效果基于html5 canvas逼真下雪场景动画特效源码 6种特效HTML5 canvas炫酷3D六角雪花飘落特效源码基于HTML5 Canvas实现下雪雪花下落动画特效源码
- html5 canvas实现圆形时钟代码分享Html5 canvas实现粒子时钟的示例代码用HTML5的canvas实现一个炫酷时钟效果使用html5 canvas 画时钟代码实例分享使用canvas绘制超炫时钟canvas版人体时钟的实现示例
- html5 css3网站菜单实现代码jQuery+CSS3漂亮简洁橙色的网站二级下拉导航菜单纯CSS3实现的华丽网站下拉菜单导航特效源码一款纯CSS3代码实现星系轨道旋转网站菜单特效源码
- html5 自定义播放器核心代码HTML5 video标签(播放器)学习笔记(二):播放控制HTML5 video标签(播放器)学习笔记(一):使用入门HTML5制作酷炫音频播放器插件图文教程html5实现完美兼容各大浏览器的播放器html5中 media(播放器)的api使用指南html5 音乐播放器 audio 标签使用概述HTML5 MiranaVideo播放器 (代码开源) 从零实现一个自定义html5播放器的示例代码
- 谷歌浏览器小字体处理方案即12px以下字体html5实现点击弹出图片功能html5 录制mp3音频支持采样率和比特率设置html5表单的required属性使用html5调用摄像头实例代码HTML5页面音频自动播放的实现方式Html5大屏数据可视化开发的实现html实现弹窗的实例HTML5来实现本地文件读取和写入的实现方法HTML 罗盘式时钟的实现HTML5简单实现添加背景音乐的几种方法
- 利用html5的websocket实现websocket聊天室HTML5+WebSocket实现多文件同时上传的实例HTML5-WebSocket实现聊天室示例浅析HTML5的WebSocket与服务器推送事件HTML5实现WebSocket协议原理浅析html5的websockets全双工通信详解学习示例html5-websocket基于远程方法调用的数据交互实现基于HTML5的WebSocket的实例代码
