我目前使用Batik的SVGGraphics2D,代码如下:
...
final SVGGraphics2D svgGraphics2D = new SVGGraphics2D(svgGeneratorContext, false);
svgGraphics2D.setSVGCanvasSize(new Dimension(width, height));
svgGraphics2D.setFont(font);
...
因此,如果
font
在执行代码的系统上是可用的Font
,则将正确的属性添加到生成的SVG文件中。但是,如果缺少字体(例如在Linux框中的“Verdana”),则会使用默认字体(添加
font-family:'Dialog'
)。因此,我想传递一个
font-family
而不是指定一个字体,以便在生成的SVG中有font-family="DejaVu Sans,Verdana,Geneva,sans-serif"
。如果我没有错,API只接受Font
参数,那么我该如何实现这一点?我希望有更简单的方法,而不是使用xslt来转换xml输出。
提前感谢您。