问题标签 [batik]

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 投票
1 回答
389 浏览

java - 使用 Batik Transcoder 禁用日志记录?

我正在使用svgs 的蜡染转码器,每次转换 SVG 图像时,它都会在标准输出上产生输出。我假设它正在使用某种日志记录包。如何禁用此输出?

0 投票
2 回答
2747 浏览

java - 如何从透明 SVG 文件设置透明图标

我有一个透明的 SVG 文件。我想通过 setIcon() 将它用作 JLabel 的图标。

我将蜡染用于 SVG,但我不知道该怎么做。你能帮助我吗 ?

谢谢 :)

0 投票
2 回答
5920 浏览

java - 如何调整 svg 的大小(使用蜡染)并显示它?

我有一个 100x100 像素的 svg 文件(例如)。我正在使用蜡染。

如果我做一个:

它只会显示图片的这一部分,而不是调整大小的图像。

你知道如何显示调整大小的 svg 图片吗?

谢谢 ;)

0 投票
1 回答
3150 浏览

java - 如何使用 Apache Batik 将一个 SVG 图像叠加到另一个上?

我有 2 个 SVG 文件需要使用 Batik 覆盖。一个文件用作背景图像,大小为 308 像素 x 308 像素,而第二个文件(260 像素 x 260 像素)是必须居中的前景图像(即位于背景图像的中心)。我希望将操作结果保存在第三个 SVG 文件中。如果您熟悉蜡染,我会很感激您的建议。

谢谢,

奥利维尔。

0 投票
1 回答
7588 浏览

java - 从另一个带有元素的 svg 图像创建一个嵌入 base64 字符串的 SVG 图像

我有一个包含多个元素(如路径、圆形、矩形等)的 SVG 文件。

我想将该 SVG 文件转换为具有嵌入式 base64 数据而不是多个元素的 SVG。蜡染可以做到这一点吗?

我正在进行的项目要求我只使用 Java 库。

0 投票
1 回答
3622 浏览

java - 使用 SWT 在 Java 中渲染 SVG - Batik 太慢了

当我尝试使用 SWT 渲染 SVG 文件时,我遇到了 Batik 的性能问题。它看起来像是一个非常臃肿的库,但我能找到的唯一另一个是 SVGSalamander,它看起来只是 Swing。有没有一种方法可以渲染 SVG 而无需先将它们转换为更快的位图形式?它需要是跨平台的。

0 投票
1 回答
1179 浏览

java - Batik Swing SVG:画布中的对象事件

我正在寻找一个 java 库来使用 SVG 进行工作流程演示。

我的问题:

蜡染是动态的,您可以在 svg 绘图中移动对象吗?例如,在画布中移动图标。像这样的东西:可移动的物体

0 投票
7 回答
57036 浏览

pdf - 将pdf转换为svg

我想将 PDF 转换为 SVG,请建议一些能够有效执行此操作的库/可执行文件。我已经使用 apache PDFBox 和 Batik 库编写了自己的 java 程序 -

该解决方案效果很好,但生成的 svg 文件的大小很大。(比 pdf 大很多倍)。我通过在文本编辑器中查看 svg 找出了问题所在。即使字符的字体属性相同,它将原始文档中的每个字符都包含在自己的块中。例如,单词 hello 将显示为 6 个不同的文本块。有没有办法修复上面的代码?或者请建议另一种更有效的解决方案。

0 投票
1 回答
615 浏览

java - 蜡染 - id-attribute 在保存的文档中出现两次

我使用蜡染两次加载一个 svg-document 并向其中添加另一个文档的元素,但是 id-attribute 现在在某些属性中出现在保存的文档中两次。因此,当我尝试使用 Inkscape 打开保存的文档时,它只会显示一个错误,即无法打开文件。通过手动删除一些 id,现在可以使用 Inkscape 打开文件。

非常感谢您的帮助。

...

...

文件的一部分:

0 投票
1 回答
2022 浏览

php - PHP exec 和 Batik 光栅化器

我正在使用 Batik 将 SVG 图像转换为 PDF。当通过终端转换它们时,一切都很好,文件也被转换了。但是,我想要的是使用 exec() 从 PHP 动态转换它。

这是我从终端转换时看到的:

使用 exec() 时,输出仅限于 'Converting output.svg... Etc' 而没有 ...success 部分。好像服务器不会等待脚本完成。此外,生成的 PDF 文件是完全空的。

这是 PHP 中的调用:

$command = 'cd ~/Downloads/batik-1.7 && java -jar batik-rasterizer.jar /opt/lampp/htdocs/tool/generated/output.svg -m "application/pdf"';

$string = exec($command);

这是我在 js 控制台中看到的:

Design saved as generated/output.svgConverting output.svg to /opt/lampp/htdocs/tool/generated/output.pdf ...

编辑:

使用 stderr 我得到了:

No protocol specified Exception in thread "main" java.lang.InternalError: Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable.

编辑2:

经过一番谷歌搜索后,我找到了解决方案:

-Djava.awt.headless=true:)

感谢大家指导我找到答案!