相关疑难解决方法(0)

将HTML Canvas捕获为gif/jpg/png/pdf?

是否可以捕获或打印html画布中显示的图像或pdf?

我想通过画布生成一个图像,并能够从该图像生成一个png.

javascript html5 png export canvas

684
推荐指数
8
解决办法
55万
查看次数

将blob转换为base64

这是我要BlobBase64字符串执行的代码的代码段:

这个注释部分有效,当由此生成的URL设置为img src时,它会显示图像:

var blob = items[i].getAsFile();
//var URLObj = window.URL || window.webkitURL;
//var source = URLObj.createObjectURL(blob);
//console.log("image source=" + source);

var reader = new FileReader();
reader.onload = function(event){
console.log(event.target.result)
}; // data url!
var source = reader.readAsBinaryString(blob);
Run Code Online (Sandbox Code Playgroud)

问题是代码越低,生成的源变量为null

更新:

有没有更简单的方法来使用JQuery从Blob文件创建Base64字符串,如上面的代码?

javascript jquery

109
推荐指数
11
解决办法
16万
查看次数

如何将d3.js图转换/保存为pdf/jpeg

我正在使用客户端/ javascript函数将现有的D3-SVG图保存或转换为文件.我经常搜索并找到一些建议,主要是使用canvas.toDataURL().

我没有<canvas>在我的页面中,而是使用:d3.select("body").append("svg").... 我也尝试将SVG附加到<canvas>但没有任何反应.

你能帮我解决这个例外:

Uncaught TypeError: Object #<SVGSVGElement> has no method 'toDataURL' 
Run Code Online (Sandbox Code Playgroud)

谢谢

svg pdf-generation d3.js

30
推荐指数
3
解决办法
6万
查看次数

如何使用html5 canvas/javascript/jquery将svg转换为png并保存在服务器上

好吧,我需要一些关于将.svg文件/图像转换为.png文件/图像的帮助......

我的页面上显示了.svg图像.它保存在我的服务器上(作为.png文件).我需要根据需要将其转换为.png文件(单击按钮)并将.png文件保存在服务器上(我将使用.ajax请求执行此操作).

但问题是转换.

我读了很多关于html5 Canvas的东西,这可能有助于做我现在需要做的事情,但是我找不到任何明确的解决方案来解决我的问题,而且,tbh,我不明白我发现的一切......所以我需要一些明确的建议/帮助我必须这样做.

这是"html idea"模板:

<html>
    <body>
        <svg id="mySvg" width="300px" height="300px">
            <!-- my svg data -->
        </svg>
        <label id="button">Click to convert</label>
        <canvas id="myCanvas"></canvas>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

和一些js:

<script>
    $("body").on("click","#button",function(){
        var svgText = $("#myViewer").outerHTML;
        var myCanvas = document.getElementById("canvas");
        var ctxt = myCanvas.getContext("2d");
    });
</script>
Run Code Online (Sandbox Code Playgroud)

然后,我需要将svg绘制到Canvas中,获取base64数据,并将其保存在我的服务器上的.png文件中......但是......怎么样?我读到了很多不同的解决方案,我实际上......迷失了...我正在研究jsfiddle,但我实际上......无处可寻...... http://jsfiddle.net/xfh7nctk/6 / ...感谢您的阅读/帮助

html javascript svg png canvas

27
推荐指数
2
解决办法
5万
查看次数

如何保存/导出使用CSS从浏览器到图像文件样式的内联SVG

我有一个Web应用程序,它根据用户交互动态在客户端生成内联SVG图形.图形部分由元素属性定义,部分由CSS类和id定义.

我希望能够为客户端提供一个选项,将内联SVG的副本保存为位图或.svg图像文件.从外部CSS样式文件应用所有样式非常重要.我如何提供此功能以保存为.svg或位图(.gif),最好是在浏览器中使用javascript,或者在服务器上使用node.js?

javascript browser svg export image

21
推荐指数
2
解决办法
9647
查看次数

将Raphael SVG转换为图像(png等)客户端

可能重复:
在浏览器中将SVG转换为图像(JPEG,PNG等)

我有一个小项目,用户使用Raphael构建图表,然后将组合图表导出到图像中进行保存.

问题是它必须脱机运行.http://www.nihilogic.dk/labs/canvas2image/不会起作用,因为它需要画布,而不是Raphael生成的SVG.

有没有办法(javascript)我可以从SVG导出图像?

javascript svg raphael

16
推荐指数
1
解决办法
2万
查看次数

将文档内SVG栅格化为Canvas

为了正确回答这个问题,我想我会:

  1. 将文档内SVG文件转换为数据URL
  2. 加载到 <img>
  3. 把它绘制<img>成一个<canvas>
  4. 将其转换<canvas>为PNG数据URL
  5. 将该数据URL加载到图像中.

我在这里有一个例子:http:
//phrogz.net/SVG/svg_to_png.xhtml

在Firefox中,我(NS_ERROR_NOT_AVAILABLE) [nsIDOMCanvasRenderingContext2D.drawImage]尝试在步骤3中将图像绘制到画布时得到.

为什么我在Firefox中出现此错误,或者我该如何解决它?

在Chrome中,SECURITY_ERR当我尝试toDataURL()在第4步中调用时,我收到异常.

为什么我会在Chrome中收到此错误,或者我该如何解决?

所述WHATWG规范指出的原点为"从一个数据中产生:在另一文献或在脚本中找到URL"的图象应是相同的文件.此测试中的所有数据均来自同一文档.

javascript html5 svg canvas

15
推荐指数
1
解决办法
5370
查看次数

使用d3.js将SVG添加到Canvas

有没有人在创建d3.js可视化时尝试使用svg来绘制库?我已经尝试使用canvg.js和d3.js将svg从android 2.3应用程序webview中转换为canvas,但是当我调用时:

svg.selectAll(".axis")
    .data(d3.range(angle.domain()[1]))
    .enter().append("g")
    .attr("class", "axis")
    .attr("transform", function(d) { return "rotate(" + angle(d) * 180 / Math.PI + ")"; })
    .call(d3.svg.axis()
        .scale(radius.copy().range([-5, -outerRadius]))
        .ticks(5)
        .orient("left"))
    .append("text")
    .attr("y", 
        function (d) {
            if (window.innerWidth < 455){
                console.log("innerWidth less than 455: ",window.innerWidth);
                return -(window.innerHeight * .33);
            }
            else {
                console.log("innerWidth greater than 455: ",window.innerWidth);
                return -(window.innerHeight * .33);
            }
        })
    .attr("dy", ".71em")
    .attr("text-anchor", "middle")
    .text(function(d, i) { return capitalMeta[i]; })
    .attr("style","font-size:12px;");
Run Code Online (Sandbox Code Playgroud)

我收到错误:Uncaught TypeError:无法调用setPropertynull的方法http://mbostock.github.com/d3/d3.js?2.5.0:1707

是某种无头浏览器应用程序,还是服务器端js解析器?有没有人遇到过这个?

javascript select svg node.js d3.js

14
推荐指数
3
解决办法
2万
查看次数

使用jspdf将Svg渲染为Pdf

我在使用jspdf将svg元素渲染为pdf时遇到了麻烦.我使用插件https://github.com/CBiX/svgToPdf.js/来做到这一点.

以下是我的代码

// I recommend to keep the svg visible as a preview
var tmp = document.getElementById("chartContainer");
var svgDoc = tmp.getElementsByTagName("svg")[0];
var pdf = new jsPDF('p', 'pt', 'a4');
svgElementToPdf(svgDoc, pdf, {
scale: 72 / 96, // this is the ratio of px to pt units
removeInvalid: false // this removes elements that could not be translated to pdf from the source        svg
});
pdf.output('datauri'); // use output() to get the jsPDF buffer
Run Code Online (Sandbox Code Playgroud)

它正在生成空白pdf.请帮忙

svg jspdf

14
推荐指数
1
解决办法
1万
查看次数

合并来自Raphael svg的图片

尝试创建
第1步 - 让用户通过Ajax,Raphael和Raphael freetransform上传图像.

步骤2 - 单击按钮以显示合并上载图像中的一个图像.(问题): 我找到了关于转换Raphael svg 1 2 3的类似帖子 ,
所以我也使用Canvg但得到console.log :Resource interpreted as image but transferred with MIME type text/html error: image "" not found.

请帮我找到解决方法.或任何线索如何达到相同的目标(将上传的几个Raphael svg图像转换为一个png/jpeg)?

谢谢!

步骤1

// upload images and ajax show in page
var paper = Raphael($('.upload_img')[0], 400, 200);
$('.upload_btn').click(function(){
    ...
    $.ajax({
        type: "POST",
        url: "index.php",
        data: fd,
        processData: false,
        contentType: false,
        success: function(html){
            var session = ..., file = ... type = ...; 
            function register(el) {
                // …
Run Code Online (Sandbox Code Playgroud)

jquery svg raphael canvg

13
推荐指数
1
解决办法
847
查看次数

标签 统计

svg ×8

javascript ×7

canvas ×3

d3.js ×2

export ×2

html5 ×2

jquery ×2

png ×2

raphael ×2

browser ×1

canvg ×1

html ×1

image ×1

jspdf ×1

node.js ×1

pdf-generation ×1

select ×1