JAVA:SVG 到 JPG 转换器

标签 java svg png converter batik

是否有将 SVG 转换为 JPG 的库?除了BATIK? 我使用了 BATIK 但我发现了一些问题,比如这个异常:

java.lang.NullPointerException at org.apache.batik.css.engine.CSSEngine.getCascadedStyleMap(CSSEngine.java:684) at org.apache.batik.css.engine.CSSEngine.getComputedStyle(CSSEngine.java:755) at org.apache.batik.bridge.CSSUtilities.getComputedStyle(CSSUtilities.java:96) at org.apache.batik.bridge.CSSUtilities.convertDisplay(CSSUtilities.java:509) at org.apache.batik.bridge.GVTBuilder.buildGraphicsNode(GVTBuilder.java:176) at org.apache.batik.bridge.GVTBuilder.buildComposite(GVTBuilder.java:148) at org.apache.batik.bridge.GVTBuilder.build(GVTBuilder.java:76) at org.apache.batik.transcoder.SVGAbstractTranscoder.transcode(SVGAbstractTranscoder.java:165) at org.apache.batik.transcoder.image.ImageTranscoder.transcode(ImageTranscoder.java:86) at org.apache.batik.transcoder.XMLAbstractTranscoder.transcode(XMLAbstractTranscoder.java:132)

这是我的代码:

          JPEGTranscoder transcoder = new JPEGTranscoder();

      transcoder.addTranscodingHint(JPEGTranscoder.KEY_XML_PARSER_CLASSNAME,
          "org.apache.crimson.parser.XMLReaderImpl");
      transcoder.addTranscodingHint(JPEGTranscoder.KEY_QUALITY,
          new Float(1.0));

      TranscoderInput input = new TranscoderInput(new FileInputStream("C:/Taha/SmartPlannerNew/rectangles.svg"));
      OutputStream ostream = new FileOutputStream("C:/Taha/SmartPlannerNew/out.jpg");
      TranscoderOutput output = new TranscoderOutput(ostream);

      try {
        transcoder.transcode(input, output);
    } catch (TranscoderException e) { 
        System.out.println("error***************************************************************************************************************************");
        e.printStackTrace();
    }
      System.out.println("done.");
      ostream.close();
      System.exit(0);

有人能帮帮我吗?

最佳答案

Batik 正是您要找的东西,它非常稳定,除此之外别无其他。

您可以阅读有关使用 batik 转码器部分的便捷官方教程: http://xmlgraphics.apache.org/batik/using/transcoder.html

如果您仍然遇到问题,请尝试发布您正在使用的导致错误的代码,以及完整的堆栈跟踪。这里有人可以帮助您。

关于JAVA:SVG 到 JPG 转换器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15256112/

相关文章:

svg - 可以在 SVG 中创建(或伪造)二维渐变吗?

javascript - 将元素添加到 D3 圆包节点

c# - 如何使用 C# 组合一组 png 图像,如图层?

c# - 有没有办法通过读取图像标题来了解 png 图像的透明度?

html - 使用父容器缩放 SVG

image - 是否可以将 png 转换为分层 PSD 文件?

java - 二分查找中的最大键比较 (1+log(n)) 为何不是 log(n)?

java - 如何从 Angular 8 组件中的 index.html 获取输入或访问元素?

java - 我怎样才能告诉 Struts2 在第一次显示时不要验证表单?

java - 优化数据库使用