问题标签 [svg-salamander]
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.
java - SVG蝾螈例子?
我在玩 Java 和 SVG Salamander,但不知道如何将简单的 SVG 文件渲染成JPanel
.
有人可以给我一个简单的例子吗?尝试按照官方网站中的宽松教程进行操作,但找不到简单的代码来更好地理解。
svg - 我可以使用 SVG Salamander 将 SVG 光栅化为 PNG 文件吗?
我已经看到它,因为 SVG-Salamander 对我的项目来说足够小。但我不知道我是否可以使用它,也不知道该怎么做。
我用过这段代码:
但是图像不流畅:(,有什么想法吗?
java - SVG 蝾螈图像
在过去的几天里,我一直在尝试使用 SVG Salamander 和 Java 处理和光栅化 svg 文件,但无法让它工作。
这是我的 SVG 文件,由 Adobe Illustrator 生成。它基本上包含一些随机文本,其中一个 tspan 被设置为显示黄色文本。
通过我的程序,我的目标是更改一些 tspan 文本颜色,然后将 svg 光栅化为 .png。第一种方法遍历 SVG 文档树并将唯一的 id 添加到所有标签。第二种方法随机选择一组这些 id,选择相应的 tspan 并设置填充属性(直到这里一切似乎都工作正常,一些调试显示我得到了正确的 tspan 并且填充属性设置正确)然后栅格化 svg。这是问题开始的地方:生成的 .pngs 不显示更改的字体颜色(文本颜色只是纯黑色,即使示例 xml 中的黄色 tspan 以某种方式“更改”为黑色。一些测试告诉我, 它甚至不显示更改的 tspan 文本内容。下面是设置属性和渲染的代码:
到目前为止,您有什么可以解释我的问题的吗?任何帮助表示赞赏!
Ps:如果我使用 Illustrator 在 SVG 中放置一个红色矩形,则该矩形在生成的 .png 中也是红色的。所以不知何故,这个问题似乎只影响我在我的程序中“触摸”的 tspan 或标签......
java - Java中的SVG圆分辨率
我有一个用 SVG 表示的圆圈:
然后我将此圆转换为 Java 中的 BufferedImage,宽度和高度 = 100,imageType = BufferedImage.TYPE_INT_ARGB。然后我通过以下代码将此 BufferedImage 绘制到另一个上:
其中 circleImg 是 SVG 圆的 BufferedImage。这工作正常并绘制到图像上,但是它非常像素化。有什么办法可以让圆更平滑吗?我宁愿继续使用 SVG,但如果 SVG 没有办法,也可以考虑其他方式。
我尝试过的事情:
- 我已将圆的半径设置为 500,并将 BufferedImage 的高度和宽度设置为 100。
- 我已将 BufferedImage 的高度和宽度设置为 1000,并使用 draw 方法将高度和宽度作为参数并将它们设为 100。
- 我同时做了1和2。
- 我也尝试过使半径更大,即。2500
- 我还将 circleImg 参数更改为 circleImg.getScaledInstance(100, 100, 1)
没有任何效果。有些看起来更平滑,但不是很多,有些看起来更糟。另外需要注意的是,我在使用 g.drawOval(150, 150, 100, 100) 时也观察到像素化。这让我相信问题不在于 SVG,但我可能错了。
Java版本:
对于 SVG,我使用的是 SVG-Salamander v1.0
java - 如何更改文本元素中的文本
我的 SVG 文件中有这一行:
我可以用这个获得一个 Text 类的对象,但我看不到任何将“2”更改为另一个数字的可用方法。appendText 方法似乎什么都不做,我看到没有“setText”方法。
我的代码:
调试时,我可以看到文本对象的内容变量设置为“2”(所以我认为文本元素制作正确)但我无法更改它。
java - 使用有效的 svg xml 和 SVGSalamander 创建 SVGIcon
我有一个 .xml 文档,它是一个有效的 SVG 图像。
我想用不同的颜色加载这个图标。但我不能。
作为解决方案,首先我将 xml 文件作为字符串读取并使用简单的 String.replace() 替换颜色
现在我必须使用我的新 XML 内容创建一个 SVGIcon。
是否可以使用 SVG Salamander 库来做到这一点。
java - SVG 动画与 SVG Salamander (Java 1.8)
我正在使用 SVG Salamander 和 Java(1.8)。我应该如何为 SVG 图像设置动画?
加载的 .svg 文件已经包含动画。我想我需要以某种方式更新图像,但是如何?
我听说你可以通过 SVGUniverse 为每个 DOM 元素设置动画。但这听起来有点丑...
当前的层次结构使用,如果有帮助的话:SVGPanel <- Jlabel <- SVGIcon
java - How to rotate elements with SVG Salamander
I use SVG Salamander to display and manipulate SVG images in Java. I managed to change fill, stroke or text of elements and display the changes.
Now I want to rotate an element. So I tried to manipulate the transformation matrix:
Output:
matrix(0.87615346,0.48203226,-0.48203232,0.87615346,468.09264,-25.725313) matrix(-0.39394618,-0.91913346,0.91913357,-0.39394618,-429.42706,1513.019)
As I can see in the output, the matrix is changed. But the element is not rotating in the picture.
java - 带有 SVG Salamander 的 Java 应用程序 JFrame 不可见
我想在 Java 应用程序的主框架中显示我的 SVG 文档。
dimMax 已设置并包含:1680x1050
我创建了 SVG 文档:
但是窗口不可见,如果我将光标放在任务栏中的图标上,我会看到一个空窗口,但没有显示窗口。
这是 SVG (StringBuilder sbSVG) 的内容:
要查看上面的 SVG,只需复制到一个新的文本文件中,另存为“test.svg”之类的文件并在网络浏览器中打开。我用 Firefox 完全做到了这一点,它渲染得很好,显示了两个绿灯。
java - Java SVG蝾螈线性渐变未显示
我在应用程序中使用 SVG Salamander,我生成了 SVG,但是当它被渲染时,“linearGradients”没有显示,元素的内容只是纯黑色。
如果我使用生成的 SVG 并在 Firefox 中打开它,一切都是正确的并且可以正确呈现。
SVG:
在浏览器中查看时工作正常:
https://jsfiddle.net/SimonPlatten/kcnz1sn5/1/
但当 SVG Salamander 在 Java 应用程序中呈现时不会。