问题标签 [canvg]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
20664 浏览

svg - 使用 html2canvas 时不显示 SVG

我正在做一个项目,我需要在客户端生成一个 pdf 文件(onclick saveFile as PDF),因为某些数据不会发送到服务器。我已阅读有关这些可用选项的信息;fileSaver.js 和 html2canvas,似乎都没有帮助。我还想指出,我不太擅长 javascript。这是我的js代码

和我的 HTML

为什么它不能显示 SVG 文件?如何将这些文件转换为 Canvas?有人可以向我展示代码示例吗?任何帮助将不胜感激。

0 投票
1 回答
584 浏览

javascript - 使用 render.text.css 拍摄 HighChart 的快照

我有一个禁用 x 轴标签的简单 highChart。后来我使用以下代码在图表中添加文本

我也尝试将其添加到 chart.events.load,如下所示,但仍然无法在快照中获取它。

}

我能够在我的 HTML 页面中完美地实现 xAxis 标签。问题是,我需要保存图形的图像。为此,我使用了canvg。图像出现,但使用 chart.renderer.text.css 设置的 xAxis 文本未出现在图像中。

xAxis 标签属性很好,但它不允许我在第一个标签之前和第一个标签之后添加填充。

谁能给我建议一个canvg的替代方案,它也将采用chart.render.text.css,同时保存图像或一种在highChart中定位标签的方法,如代码所示。

我们没有用于 HighChart 的 div,我们将它放在 ExtJS 面板中。这可能是标签未出现在快照中的原因吗?

提前致谢!

0 投票
1 回答
488 浏览

canvg - canvg toDataURL 不返回带有大图表的完整图像

我有图表4000 x 10000(+)。转换图像时,它返回 4000 x 8000 图像,这不是完整图像。

0 投票
1 回答
275 浏览

javascript - Canvg 转换 - 使用填充 URL 时的奇怪行为

我正在尝试使用 canvg js lib 将 svg 转换为画布。

原始 svg 包含一个矩形,其具有 url 的填充属性到 svg 模式。当我使用canvg将svg转换为画布时:

canvg(document.getElementById('canvas'), svg);

矩形填充的图像改变了它的比例(宽度和高度改变)。

显示了转换前后的 svg。

有没有人有解决这个问题的想法?

0 投票
1 回答
1123 浏览

javascript - 有什么方法可以将 c3.js 生成的图形转换为 png,并将 Png 转换为客户端的 Pdf

我想在客户端生成一个 PDF 文件,其中包含来自 JSON 对象的图形和其他表格数据。

以下是Javascript数据绑定部分:

html部分是:

除 SVG 图形部分外,PDF 文件使用所有表格数据和格式生成。使用的所有 JavaScript 代码都在标记部分中。关于什么是错误的任何想法?

0 投票
2 回答
9741 浏览

javascript - 坎夫 | 将 SVG 转换为 Canvas 以输出为图像

我在 SVG 中有一个复杂的交互式图形。我想把 SVG 变成一个隐藏的画布,这样我就可以让用户输出为 png/pdf。

test111.js 在其中创建 div#forSVG 和 svg#svg(加上圆圈、路径、文本)。

我尝试使用 svg#svg、div#forSVG 和 div.outerHTML 作为 canvg 函数的输入,但我经常收到错误消息,例如:

有不同的错误,但它们都在 canvg.js 的第 50 行左右,我怀疑它们都与未定义的 s 变量有关。编辑 1640:canvg.js 的相关行告诉我们 s 是什么:

因此,当我调用 canvg(canvas, svg) 时,我认为 s 是我输入的 svg 变量(选择是可选的)。Console.logging (typeof svg) 返回object

canvg.js 的前 60 行:

编辑结束

谁能发现我做错了什么?变量 svg 在查找已动态创建的 div 和 svg 时没有任何问题(它们正确地登录到控制台)。谢谢

0 投票
1 回答
821 浏览

javascript - 坎夫 | 在从 SVG 创建期间如何设置画布元素的样式?

我有一个从数据动态绘制的 SVG 图形。它看起来像这样: SVG

我正在使用 Canvg 创建一个(隐藏的)画布元素并允许用户将 SVG 保存为图像或 pdf。画布看起来像这样:

SVG的画布版,由canvg翻译

样式错误(!),并且某些路径似乎也丢失了。我尝试使用 CSS 来更改样式。这适用于背景颜色和字体系列,但不适用于其他任何东西:

有谁知道如何在使用 canvg 创建画布元素时设置路径和字体颜色的样式?

0 投票
1 回答
1674 浏览

javascript - 使用 canvg 脚本将内联 svg 转换为画布

我有这个网站: http: //materialground.com/icon-maker

我的身体上方有这段代码

下面我有这个代码:

我希望用户修改根 svg 标记,例如填充颜色。背景颜色、描边、视图框等。

现在的问题是如何使用 canvg 或任何其他脚本将 svg 保存为 png。我也可以使用 php 脚本。

我已经使用了这段代码,但它不起作用

我还添加了空白画布。

0 投票
2 回答
2005 浏览

javascript - Canvg不支持CSS

我有从服务器动态加载的内联 svg。我希望使用内联 css 对 svg 进行操作或修改。我已经搜索了将修改后的 svg 转换为 png 或 base64 图像。经过长时间的搜索,我决定坚持使用 Canvg。

现在的问题是它渲染了内联样式属性,如背景和边框半径。

这是我的svg。

看起来像这样:

原始 Svg Preivew

请记住,路径是从服务器动态加载的。所以不能修改。

现在我想像这样操纵它。

看起来像这样:

人工处理的图像

但是在使用canvg脚本渲染之后。它呈现为原始文件。它只包括填充颜色。没有其他的。

有没有其他方法可以做到这一点。使用画布或 svg 元素。

请帮忙!!!提前致谢

0 投票
4 回答
2016 浏览

javascript - Jquery:将 SVG 转换为具有新大小的 PNG

我正在使用以下函数将 SVG 转换为 PNG 并将其作为下载提供:

尽管输出图像与浏览器中的 SVG 大小相同,但它实际上工作正常。如何为图像设置新尺寸?我还尝试直接从 svg 而不是 BBox 获取大小,但它是一样的。