web-dev-qa-db-ja.com

あるpdfファイルまたはpsファイルを別のファイルの上にオーバーレイする

2つのpdfファイルまたはpostscriptファイルがあります(どちらでも作業できます)。私がしたいのは、ドキュメントAのページ1がドキュメントBのページ1と組み合わされて出力ドキュメントのページ1が生成されるように、各ページを他のページの上にマージすることです。これは、プログラムで行う必要があるとは限りませんが、役に立つと思います。

何か案は?

51
JohnnyLambada

コマンドラインツール pdftk を使用してpdfファイルでこれを行うことができます。stampまたはbackgroundオプションを使用します。

例えば.

$ pdftk file1.pdf background file2.pdf output combinedfile.pdf

これは、1ページの背景ファイルでのみ機能します。複数のページがある場合は、代わりに multibackground コマンドを使用できます。

78
bmb

pyPdf 、特にmergePage操作を使用して、この問題(PDFのみおよびPython)を解決することに成功しました。

ドキュメントから:

# add page 4 from input1, but first add a watermark from another pdf:
page4 = input1.getPage(3)
watermark = PdfFileReader(file("watermark.pdf", "rb"))
page4.mergePage(watermark.getPage(0))

アイデアを得るのに十分なはずです。

18
pi.

ポストスクリプトのみを扱っている場合、「改ページ」は「showpage」演算子のみである可能性があります。
この場合、ファイル1の先頭から「showpage」の最初のインスタンスまでpostscriptデータを取得し、他のファイルで同じ操作を行い、これら2つのpostscriptチャンクを連結して新しいページを作成できます。 。

2つのファイルが1ページのみの場合、2つのファイルを単純に結合できる場合があります。

2
Michael Galos

PDFbox for Javaは、この方法でPDFをマージできるオーバーレイクラスをサポートします。この回答を参照してください。 PDFBoxによる透かし

しかし、私の経験ではPyPDF2とPDFboxの両方は信頼できませんが、おそらくこれは誰かに役立つでしょう。

1
Lenar Hoyt

両方のpdfを画像に変換し、一方を他方のレイヤーのようにオーバーレイできます。

これを使用できる適切なグラフィックライブラリが機能します。

上記の透かしの提案は、選択した言語またはグラフィックス/ pdfライブラリの問題に遭遇しない限り、大きな可能性を秘めています。

1
Jas Panesar

Aspose.Pdf.Kit with PdfFileStamp class もこれを行うことができます。 ほとんどの場合 正しく動作します。

1
Uwe Keim

Mac OSツール PDFClerk Pro を使用しました。 PDFページをインポートし、「ページのマージ(スタック)」オプションでマージしました。本当に感銘を受けました。

1

OS Xの場合、PDFletterhead。PDFをオーバーレイする以外は何もしません。 https://iTunes.Apple.com/us/app/pdf-letterhead/ id976548033?mt = 12

0
mipmip

VeryPDF PDF EditorにはPDFオーバーレイ機能、このWebページを見て、

http://www.verypdf.com/wordpress/201304/how-to-overlay-pdf-to-another-pdf-35885.html

0
David