iText サンプルプログラム

目次

PDFからページの画像を取得する

PDFから前ページのJPEGファイルを抽出する.


try {
    PdfReader reader = new PdfReader("hogehoge.pdf");
    PdfReaderContentParser parser = new PdfReaderContentParser(reader);
    RenderListener listener = new RenderListener(){

        @Override
        public void beginTextBlock() {
            
        }

        @Override
        public void renderText(TextRenderInfo renderInfo) {
            
        }

        @Override
        public void endTextBlock() {
            
        }

        @Override
        public void renderImage(ImageRenderInfo renderInfo) {
            try {
                FileOutputStream os;
                PdfImageObject image = renderInfo.getImage();
                if (image == null) return;
                os = new FileOutputStream(System.currentTimeMillis() + "hogehoge.jpg");
                os.write(image.getImageAsBytes());
                os.flush();
                os.close();
            } catch (IOException e) {
                System.out.println(e.getMessage());
            }
        }
    };
    for (int i = 1; i <= reader.getNumberOfPages(); i++) {
        parser.processContent(i, listener);
    }
    reader.close();
} catch (IOException e) {
    e.printStackTrace();
}