ここでは、SVGイメージをローカルサーバーに送信しようとしています。出力ではそのイメージをPNG/JPEG形式でダウンロードします。サーブレットでsvgイメージをJavaのpngに変換する
私はいくつかの解決策を見つけましたが、それらはBATIKライブラリで実行されますが、私のEclipse BATIKライブラリではサポートされていないため、バティックライブラリは使用できません。
ここでは、SVGイメージをローカルサーバーに送信しようとしています。出力ではそのイメージをPNG/JPEG形式でダウンロードします。サーブレットでsvgイメージをJavaのpngに変換する
私はいくつかの解決策を見つけましたが、それらはBATIKライブラリで実行されますが、私のEclipse BATIKライブラリではサポートされていないため、バティックライブラリは使用できません。
バティックライブラリーを使用してください。以下はコードです。
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
私もこのコードを持っていますが、私の食卓にはバティックライブラリのエラーがあります。 BATIKライブラリがサポートされています。そのためにはどうすればいいですか? –
バージョンの互換性を確認してください。 https://www.java-forums.org/new-java/34405-installing-batik-use-eclipse.html – techhunter
も参照してください:https://xmlgraphics.apache.org/batik/ – techhunter
:
はこれを参照してください。リンクの下に従ってください:単に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);
。これが助けてくれることを願って!
このコードは動作しません –
あなたのコードを投稿してください。 – techhunter
あなたのeclipseプロジェクト内でlibという名前のフォルダを作成し、BATIKライブラリをlibフォルダにコピーし、ライブラリの "jar"を右クリックして、 - > buildpathに追加を選択します。 –
さん、バティックのライブラリはどこにありますか? @krzysztof Cichocki –