【Java】PDFからJPG変換

PDFファイルに利用されている画像をJPG変換します。
以下のライブラリが必要です。
pdfbox-2.0.7.jar
commons-logging-1.2.jar

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Iterator;

import javax.imageio.ImageIO;

import org.apache.pdfbox.cos.COSName;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPage;
import org.apache.pdfbox.pdmodel.PDPageTree;
import org.apache.pdfbox.pdmodel.PDResources;
import org.apache.pdfbox.pdmodel.graphics.PDXObject;
import org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject;

public class TestPDFBoxPdfToJpg {

    public static void main(String[] args) {
        //PDFドキュメントをロード
        try (PDDocument document = PDDocument.load(new File("D:\\test\\pdf\\e-ticket.pdf"));) {

            //ページのリストから最初の1ページを取得する
            PDPageTree pageTree = document.getDocumentCatalog().getPages();
            PDPage page = pageTree.get(0);

            //ページからリソースを取得し、最初のイメージを取得する。
            PDResources resources = page.getResources();
            Iterator<COSName> ite = resources.getXObjectNames().iterator();

            int i = 0;

            while (ite.hasNext()) {

                COSName name = ite.next();

                //取得したイメージをファイルに出力
                PDXObject xobject = resources.getXObject(name);

                if (xobject instanceof PDImageXObject) {
                    PDImageXObject image2 = (PDImageXObject) resources.getXObject(name);
                    ImageIO.write(image2.getImage(), "jpg", new FileOutputStream("D:\\test\\pdf\\e-ticket" + i + ".jpg"));
                }

                i++;
            }

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}