我想打开SVG文件,操纵那些定义的形状,并将这些形状渲染到窗口(vista / 7 / …)中的屏幕。
我使用C ++ builder。 我一直在考虑使用cairo或agg来渲染形状,但是我需要一个SVGparsing器库,它提供了一个渲染器,并且可以完全访问SVG文件中定义的形状。
有没有人知道我可以用来实现这一目标的图书馆?
因为金钱原因我不能使用Qt。
谢谢你的帮助。
AGG源包括一个SVG查看器:-)
即使你正在写商业产品,Qt许可证也应该没问题。
这样做的最好方法是,我认为,与libcairo librsvg。 两者功能非常丰富,易于使用。 我可以打开几个SVG,将它们渲染到屏幕上,并处理它们以缩放和移动它们。
通用的“渲染SVG到开罗上下文”解决方案是librsvg: https : //live.gnome.org/LibRsvg
但是,Qt和librsvg都是在LGPL(不禁止在商业产品中使用它)的情况下获得许可的。
我最近在C ++中放置了一个小的SVG渲染器库: https : //github.com/igagis/svgren
它使用开罗渲染到屏幕外表面。 支持渐变和各种形状。 它使用另一个名为svgdom的库,它实际上加载并提供了一个可以在渲染之前处理的SVG DOM。