여기에서 SVG 이미지를 로컬 서버로 보내려고하고 출력에서 PNG/JPEG 형식으로 해당 이미지를 다운로드하려고합니다.서블릿으로 java에서 svg 이미지를 java로 변환
몇 가지 해결책을 찾았지만 BATIK 라이브러리에서 수행하지만 내 Eclipse BATIK 라이브러리에서는 지원되지 않으므로 바틱 라이브러리를 사용할 수 없습니다.
여기에서 SVG 이미지를 로컬 서버로 보내려고하고 출력에서 PNG/JPEG 형식으로 해당 이미지를 다운로드하려고합니다.서블릿으로 java에서 svg 이미지를 java로 변환
몇 가지 해결책을 찾았지만 BATIK 라이브러리에서 수행하지만 내 Eclipse BATIK 라이브러리에서는 지원되지 않으므로 바틱 라이브러리를 사용할 수 없습니다.
바틱 라이브러리를 사용하십시오. 아래는 tghe 코드입니다.
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();
}
}
희망이 있으면 도움이 될 것입니다. 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
또한 틱 트랜스 코더를 사용하지 않고 형식을 PNG로 SVG를 변환 할 수 있습니다
는이 참조하십시오. 아래 링크를 따라 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);
을 단순히 ImageIO
라이브러리를 사용하여. 희망이 도움이 될 것입니다!
이 코드는 작동하지 않습니다. –
코드를 게시하십시오. – techhunter
이클립스 프로젝트 안에 lib라는 폴더를 만들고, lib 폴더에 BATIK 라이브러리를 복사하고, 라이브러리의 "jar"를 오른쪽 클릭하고 buildpath에 -> add를 선택하십시오. –
선생님, 어디에서 바틱 라이브러리를 찾을 수 있습니까 ??? @krzysztof Cichocki –