最近做项目需要将d3画的图表保存到本地,下面是具体的实现

var $svg = d3.select("#chart_detail svg")

var serializer = new XMLSerializer();
var source = '<?xml version="1.0" standalone="no"?>\r\n' + serializer.serializeToString($svg.node());
var image = new Image;
image.src = "data:image/svg+xml;base64," + btoa(unescape(encodeURIComponent(source)));
image.onload = function () {
var canvas = document.createElement("canvas");
canvas.width = $("#chart svg").width() + 140;
canvas.height = $("#chart svg").height() + 40;
var context = canvas.getContext("2d");
context.fillStyle = '#fff';//设置保存后的PNG 是白色的
context.fillRect(0, 0, 10000, 10000);
context.drawImage(image, 20, 20);
var url = canvas.toDataURL("image/png");
var pngName = "svgtoPng图";
var a = document.createElement("a");
a.download = pngName + ".png";
a.href = url;
a.click();
return 最近做项目需要将d3画的图表保存到本地,下面是具体的实现 var $svg = d3.select(&quot;#chart_detail svg&quot;)            var serializer = new XMLSerializer();            var source = '&amp;lt;?xml version=&quot;1.0&quot; standalone=&quot;no&quot;?&amp;gt;\r\n' + seri...
downloadImg() { // 将当前canvas转换为png 图片 var serializer = new XMLSerializer(); var source = serializer.serializeToString(this.svg.node()); source = '<?xml version="1.0" standalone="no"?>\r\n' + so...
我的方法是在浏览器的console面板里输入下面的命令,就会直接触发 下载 转化好的PNG文件。 saveSvgAsPng(d3.select('svg').node(), 'myDrawing.png', {scale: 2,backgroundColor:"#ffffff",encoderOptions:1.0}); 以下转自:https://blog.csdn.net/qq_36208461/...
### 回答1: d3dcompiler_47.dll是一个DirectX组件,用于支持3D图形渲染。如果您的计算机缺少此文件,可能会导致某些游戏或应用程序无法正常运行。您可以从Microsoft官方网站或其他可信的 下载 网站 下载 d3dcompiler_47.dll文件,并将其放置在正确的文件夹中。请注意, 下载 文件时要注意安全性,以避免 下载 恶意软件。 ### 回答2: d3dcompiler_47.dll 是一款由 Microsoft 公司开发的 DLL 文件,它主要用于 DirectX 12,以提供更好的游戏性能和更高的图形质量。通常情况下,Windows 系统会为您自动 下载 和安装这个文件,但有时因为某些原因,这个文件可能会丢失或损坏而需要重新 下载 。 如果您需要 下载 d3dcompiler_47.dll 文件,可以通过以下几种方法: 1. 从官网 下载 :您可以从 Microsoft 官网或 DirectX 官网 下载 该文件。这是最直接的方法,因为官方提供的文件通常是经过验证和安全的。 2. 使用 DLL 下载 网站:有一些网站提供 DLL 文件 下载 服务,但请谨慎选择,确保所 下载 的 DLL 文件是安全的且与您的操作系统和软件版本兼容。 3. 从 Windows 系统中复制:如果您的电脑上已经有该文件,您可以通过在 Windows 系统中搜索该文件的名称并将其复制到您需要的位置来获得该文件。 无论您选择哪种方式,安装和使用该文件都需要小心谨慎。在 下载 和安装该文件之前,最好备份您的 Windows 系统和应用程序,以免出现不可预料的问题。同时,确保 下载 的文件没有病毒和恶意软件,以免对您的计算机造成损害。 ### 回答3: d3dcompiler_47.dll是一个Windows系统动态链接库文件,用于支持Direct3D编译器,同时也支持许多游戏和程序的正常运行。当你在运行某些游戏或程序时,出现错误提示“找不到d3dcompiler_47.dll”时,你需要 下载 并安装这个文件,才能继续运行该应用程序。 如何 下载 d3dcompiler_47.dll? 一般情况下,如果你需要 下载 d3dcompiler_47.dll,那么你需要找到一个可靠的网站来 下载 该文件。以下是一些可靠的 下载 网站: 1. Microsoft官方网站:你可以在Microsoft官方网站 下载 d3dcompiler_47.dll文件。前往Microsoft官方网站,然后通过搜索框搜寻此文件即可 下载 。确保你 下载 的是对应你Windows操作系统版本的文件。 2. 网络论坛:在一些游戏或技术相关的论坛里,你可能会找到一些其他用户分享的d3dcompiler_47.dll文件 下载 链接。但是需要注意,这方法风险较高,最好 下载 来自可信任来源的文件。 3. 第三方软件网站:一些第三方软件 下载 网站可以提供d3dcompiler_47.dlld的 下载 ,例如cnet.com等。但是也需要注意可靠性。 注意事项: 1. 下载 时需尽量选择一个安全可靠的 下载 网站,防止 下载 到含有病毒的dll文件。 2. 确认 下载 的版本与你的操作系统版本相匹配。应该按需选择x64或x86。 3. 保留好dll文件,不要更改或删除该文件,以免影响其他相关程序运行。 下载 d3dcompiler_47.dll是解决遇到游戏或应用程序无法运行的问题的一种方法。正确的 下载 该文件可以保证游戏或应用程序能够正常运行,并且可以避免因为 下载 的dll文件出现问题而导致其他程序发生错误。记得在 下载 后保存好dll文件,并遵循以上注意事项。