我的方法是在浏览器的console面板里输入下面的命令,就会直接触发下载转化好的PNG文件。
saveSvgAsPng(d3.select('svg').node(), 'myDrawing.png', {scale: 2,backgroundColor:"#ffffff",encoderOptions:1.0});
以下转自:https://blog.csdn.net/qq_36208461/article/details/83151820
因为工作需要使用到SVG,然后使用了d3.js.
然后甲方爸爸想要看到版本记录。
那么我就需要将d3.js 生成的SVG转化成图片保存。在这里经历了很多坑。
分享一下,让各位可以避坑!
其实很简单,就是使用saveSvgAsPng.js
链接:https://pan.baidu.com/s/1QROVvGHZT6FwGuESFHAntg 密码:zfmg
使用方法就是
var canvas = $("#svg-wrap svg")[0];
//调用方法转换即可,转换结果就是uri,
svgAsPngUri(canvas, null, function(uri) {
$("#svg-wrap").append('<img src="' + uri + '" alt="转换失败"/>');
很神奇的。
好啦,转载记得注明出处啊:https://blog.csdn.net/qq_36208461/article/details/83151820
我的方法是在浏览器的console面板里输入下面的命令,就会直接触发下载转化好的PNG文件。saveSvgAsPng(d3.select('svg').node(), 'myDrawing.png', {scale: 2,backgroundColor:"#ffffff",encoderOptions:1.0});以下转自:https://blog.csdn.net/qq_36208461/...
downloadImg() { // 将当前canvas转换为png图片
var serializer = new XMLSerializer();
var source = serializer.serializeToString(this.svg.node());
source = '<?xml version="1.0" standalone="no"?>\r\n' + so...
var svgHeadInfo = '\n';
var svg = $('#vizContainer').find('svg')[0];
svg.setAttribute("xmlns:xlink", "http://www.w3.org/1999/xlink");
var svgS
分享一下,让各位可以避坑!
其实很简单,就是使用saveSvgAsPng.js
链接:http://p8sv0x8g6.bkt.clouddn.com/saveSvgAsPng.js
使用方法就是
var canvas = $(&quot;#s...
//svg 保存成Png fuction
function svgToPng(svg,pngWidth,pngHeight){
var serializer = new XMLSerializer();
var source = '<?xml version="1.0" standalone="no"?>\r\n'+serializer...
这是一个用于将 d3js 图形保存为 PDF/PNG/SVG 文件的概念验证演示。
CGI 接受传入的 SVG 序列化。 使用图形工具包打开 SVG 序列化作为输入,输出 PNG 或 PDF 作为输出。
这个 perl 实现只是在rsvg-convert上执行一个系统调用,没有特定于 perl。
imagemagick
有关另一个不错的概述,请参见 。 我们只运行rsvg-convert
有关更多详细信息,请参见此处:*
在线演示请参见此处: :
其他语言的实现
有几个人已经用其他语言实现了 CGI 部分:
NodeJS: :
Python /烧瓶: :
我编写的所有代码都是在 BSD 许可下发布
WebP是Google开发的一种新的图像格式。
这些图像很小,但是其格式尚未得到广泛认可。
通过将图像转换为PNG,您将能够在图像编辑程序中使用它,和/或将其上传到在线图像托管站点,例如imgur。
该扩展程序占用空间小:除非您通过单击上下文菜单选项使用它,否则它不会使用任何内存或CPU。
更新(2014年1月4日):如果您使用的是Chrome 30或更低版本,则无法保存某些网站(例如Chrome网上应用店)中的图片。
更新到Chrome 31,以获得最佳的用户体验。
注意(2014年6月30日):KDE(Linux)上的Chrome 35存在一个错误,该错误会导致Chrome在扩展程序打开“另存为”对话框时崩溃。
降级至Chrome 34或升级至Chrome 36以解决该问题。
支持语言:English
svg转png网络上常用的方式有两种:
1.直接转base64放到图片src进行显示,测试效果不佳,始终报方法问题。
2.先转canvas,再转为png图,测试效果可以但svg透明背景到了canvas转换会变黑。
推荐使用方法三:
复制链接下载svg转png的js
http://p8sv0x8g6.bkt.clouddn.com/saveSvgAsPng.js
方法使用:
//获取s...