0

一部の PDF を JPEG に変換しようとすると、「コンテンツはプロローグでは許可されていません」というメッセージとともに例外が発生します。SVGをPDFに変換してからPDFを画像に変換する2段階の操作を実行しています。

Batik が対象とする直接プロセスを実行しようとすると、この問題に直面しています。

これが私のコードです。

File pdfFile= new File("path to pdffile");
InputStream in = new java.io.FileInputStream(pdfFile);
JPEGTranscoder transcoder = new JPEGTranscoder();
transcoder.addTranscodingHint(JPEGTranscoder.KEY_XML_PARSER_CLASSNAME,
        "org.apache.crimson.parser.XMLReaderImpl");
transcoder.addTranscodingHint(JPEGTranscoder.KEY_QUALITY,
        new Float(1.0));
TranscoderInput input = new TranscoderInput(in);
OutputStream ostream = new FileOutputStream("path to jp file here!");
TranscoderOutput output = new TranscoderOutput(ostream);
transcoder.transcode(input, output);
ostream.close();
4

2 に答える 2

0

Batikトランスコーダは、pdf ドキュメントではなく、SVG データが入力として与えられることを期待しています。

于 2012-11-07T16:33:12.667 に答える
0

Batik で PDF を JPEG に変換できることを示すものは見つかりません。ところで、Batik は XML グラフィック ライブラリであり、一般的なトランスコーダ ライブラリではありません。PDFからJPEGへの変換は目的ではなく、SVG入力を表示および/またはトランスコードして画像出力にするためのものです。

そうは言っても、SVG から JPEG に直接移行できない理由はありますか? または、Batik を使用して SVG から PDF へのトランスコードを行い、Batik 以外の別のライブラリを使用して PDF を JPEG にトランスコードしますか? このアプローチに関する懸念事項は何ですか?

于 2012-11-07T16:33:25.093 に答える