PDF 문서를 이미지로 변환하고 싶습니다. Ghost4j를 사용하고있었습니다.PDF 파일을 이미지로 변환
문제 : Ghost4J 런타임에 gsdll32.dll을 파일을 필요로하고 내가 하지가 DLL 파일을 사용 하시겠습니까.
질문 1 : dhost가없는 이미지를 변환하는 ghost4j에는 어떤 방법이 있습니까?
질문 2 : 나는 PDFBox API의 해결책을 발견. org.apache.pdfbox.pdmodel.PDPagep have method
convertToImage()`는 PDF 페이지를 이미지 형식으로 변환합니다.
PDDocument doc = PDDocument.load(new File("/document.pdf"));
List<PDPage>pages = doc.getDocumentCatalog().getAllPages();
PDPage page = pages.get(0);
BufferedImage image =page.convertToImage();
File outputfile = new File("/image.png");
ImageIO.write(image, "png", outputfile);
doc.close();
나는 PDF 문서에만 텍스트가 있습니다. 이 코드를 실행할 때 예외가 있습니다.
Aug 12, 2013 6:00:24 PM org.apache.pdfbox.util.PDFStreamEngine processOperator
INFO: unsupported/disabled operation: BDC
Exception in thread "main" java.lang.ExceptionInInitializerError
at org.apache.pdfbox.pdmodel.font.PDTrueTypeFont.getawtFont(PDTrueTypeFont.java:481)
at org.apache.pdfbox.pdmodel.font.PDSimpleFont.drawString(PDSimpleFont.java:109)
at org.apache.pdfbox.pdfviewer.PageDrawer.processTextPosition(PageDrawer.java:235)
at org.apache.pdfbox.util.PDFStreamEngine.processEncodedText(PDFStreamEngine.java:496)
at org.apache.pdfbox.util.operator.ShowTextGlyph.process(ShowTextGlyph.java:62)
at org.apache.pdfbox.util.PDFStreamEngine.processOperator(PDFStreamEngine.java:554)
at org.apache.pdfbox.util.PDFStreamEngine.processSubStream(PDFStreamEngine.java:268)
at org.apache.pdfbox.util.PDFStreamEngine.processSubStream(PDFStreamEngine.java:235)
at org.apache.pdfbox.util.PDFStreamEngine.processStream(PDFStreamEngine.java:215)
at org.apache.pdfbox.pdfviewer.PageDrawer.drawPage(PageDrawer.java:125)
at org.apache.pdfbox.pdmodel.PDPage.convertToImage(PDPage.java:781)
at org.apache.pdfbox.pdmodel.PDPage.convertToImage(PDPage.java:712)
at ge.eid.esignature.adessa.pades.sign.PDFtoImage.main(PDFtoImage.java:25)
Caused by: java.lang.IllegalArgumentException
at java.nio.Buffer.position(Buffer.java:216)
at sun.font.TrueTypeFont.lookupName(TrueTypeFont.java:1153)
at sun.font.TrueTypeFont.getPostscriptName(TrueTypeFont.java:1205)
at java.awt.Font.getPSName(Font.java:1156)
at org.apache.pdfbox.pdmodel.font.FontManager.loadFonts(FontManager.java:101)
at org.apache.pdfbox.pdmodel.font.FontManager.<clinit>(FontManager.java:53)
... 13 more
이 오류가 발생했습니다 2015 년 5 월 26 일 11:43:31 AM org.apache.pdfbox.util.PDFStreamEngine processOperator 정보 : 지원되지 않거나 비활성화 된 작업 : BDC 2015 년 5 월 26 일 11:43 : 31 AM org.apache.pdfbox.util.PDFStreamEngine processOperator INFO : 지원되지 않음/disab led 작업 : EMC pdfbox를 사용하고 있습니다. 1.8.9 jar –
PDFbox의 최신 버전은 약간 다릅니다. PDFRendered 클래스를 사용하십시오. –
텍스트 및 이미지 내용을 모두 가지고있는 pdf에 문제가 있습니다. 필자는 최종 이미지 (입력 PDF 파일의)가 생성 된 후 텍스트 데이터가 생략되고 이미지 부분 (예 : 배경 이미지 등) 만 표시되는 것을 보았습니다. 이 점에있어서 도움이 되었으면 좋겠습니다. – yeppe