2017-02-20 29 views
-2

ここでは、SVGイメージをローカルサーバーに送信しようとしています。出力ではそのイメージをPNG/JPEG形式でダウンロードします。サーブレットでsvgイメージをJavaのpngに変換する

私はいくつかの解決策を見つけましたが、それらはBATIKライブラリで実行されますが、私のEclipse BATIKライブラリではサポートされていないため、バティックライブラリは使用できません。

+2

あなたのコードを投稿してください。 – techhunter

+0

あなたのeclipseプロジェクト内でlibという名前のフォルダを作成し、BATIKライブラリをlibフォルダにコピーし、ライブラリの "jar"を右クリックして、 - > buildpathに追加を選択します。 –

+0

さん、バティックのライブラリはどこにありますか? @krzysztof Cichocki –

答えて

2

バティックライブラリーを使用してください。以下はコードです。

import java.io.*; 
    import org.apache.batik.transcoder.image.PNGTranscoder; 
    import org.apache.batik.transcoder.TranscoderInput; 
    import org.apache.batik.transcoder.TranscoderOutput; 
    import java.nio.file.Paths; 
    import java.nio.file.Path; 
    public class svg2png { 
     public static void main(String[] args) throws Exception { 
      //Step -1: We read the input SVG document into Transcoder Input 
      //We use Java NIO for this purpose 
      String svg_URI_input = Paths.get("chessboard.svg").toUri().toURL().toString(); 
      TranscoderInput input_svg_image = new TranscoderInput(svg_URI_input);   
      //Step-2: Define OutputStream to PNG Image and attach to TranscoderOutput 
      OutputStream png_ostream = new FileOutputStream("chessboard.png"); 
      TranscoderOutput output_png_image = new TranscoderOutput(png_ostream);    
      // Step-3: Create PNGTranscoder and define hints if required 
      PNGTranscoder my_converter = new PNGTranscoder();   
      // Step-4: Convert and Write output 
      my_converter.transcode(input_svg_image, output_png_image); 
      // Step 5- close/flush Output Stream 
      png_ostream.flush(); 
      png_ostream.close();   
     } 
} 

ご希望の場合はお手数ですが、あなたはまた、バティックトランスコーダを使用せずにフォーマットをPNG形式にSVGに変換することができますhttp://thinktibits.blogspot.com/2012/12/Batik-Convert-SVG-PNG-Java-Program-Example.html

+0

私もこのコードを持っていますが、私の食卓にはバティックライブラリのエラーがあります。 BATIKライブラリがサポートされています。そのためにはどうすればいいですか? –

+0

バージョンの互換性を確認してください。 https://www.java-forums.org/new-java/34405-installing-batik-use-eclipse.html – techhunter

+0

も参照してください:https://xmlgraphics.apache.org/batik/ – techhunter

0

はこれを参照してください。リンクの下に従ってください:単にImageIOライブラリを使用することにより https://nupur28ag.blogspot.in/

BufferedImage input_image = null; 
input_image = ImageIO.read(new File("Convert_to_PNG.svg")); //read svginto input_image object 
File outputfile = new File("imageio_png_output.png"); //create new outputfile object 
ImageIO.write(input_image, "PNG", outputfile); 

。これが助けてくれることを願って!

+0

このコードは動作しません –

関連する問題