2016-03-21 43 views
2

PDFページから領域をプログラムで切り抜こうとしています。具体的には、私の入力は1ページのPDFとページ上のバウンディングボックスになります。出力は元のPDFの文字、グラフィックスパス、画像を含むPDFになります。元のPDFと同じように見えます。つまり、イメージから領域を切り抜くのに似ているが、PDFを使用するのと同じような機能が必要です。PDFBoxからPDFボックスの領域を切り出す

3つの質問:

  1. はそれを行うには全く可能ですか?私のPDFの知識から、それは可能と思われます。しかし、私は専門家ではないので、私はここに欠けているものがあるかどうか最初に知りたいと思います。

  2. オープンソースソフトウェアはありますか?

  3. Can Can Can Can this this can?私はそのような機能を見つけることができませんでしたが、私はそれを逃した可能性があります。誰かがこれをやろうとする試みを知っていますか?

+1

クロップ後、PDFビューアにはそのボックス内の領域のみが表示されますか?実際には、ボックス外のコンテンツの描画命令を削除する必要がありますか?前者は@ティルマンが答えで述べたものであり、後者ははるかに複雑です。 – mkl

+1

はい、私は2番目のものが欲しいと思います。境界ボックス内にある描画、テキスト、イメージの命令だけを含む新しいPDFが必要です。 – rivu

+0

2番目のものは興味深いでしょう:すべての操作は、ボックスの内側か外側かに応じてチェックし、調整する必要があります。そして、部分的に箱に入っているもののための戦略を持っています。 (ええ、「これは決して起こりません」、LOL) –

答えて

1

1-はい、これはcrop boxと呼ばれます。

2-はい。 PDFBox。

3 - はい、ちょうどPDFを開いて、トリミングボックスを設定し、それを保存:PDRectangleで

PDDocument doc = PDDocument.load(new File(...)); 
PDPage page = doc.getPage(0); 
page.setCropBox(new PDRectangle(20, 20, 200, 400)); 
doc.save(...); 
doc.close(); 

番号がuser space unitsです。 1単位= 1/72インチ。

+0

Adob​​eの仕様では、「トリミングボックスは、表示または印刷時にページの内容が切り取られる(切り取られる)領域を定義します。これは私が望むものではないと思います。元のPDFのバウンディングボックス内にグラフィックパス、文字、イメージのみを含む新しいPDFを作成したいと思います。 – rivu

関連する問題