69 votes

superposer un fichier pdf ou ps sur un autre

J'ai deux fichiers pdf ou postscript (je peux travailler avec l'un ou l'autre). Ce que je veux faire, c'est fusionner chaque page l'une sur l'autre de sorte que la page 1 du document A soit combinée avec la page 1 du document B pour produire la page 1 du document de sortie. Ce n'est pas quelque chose que je veux nécessairement faire de manière programmatique, même si cela serait utile.

Des idées ?

103voto

bmb Points 2995

Vous pouvez faire cela avec les fichiers pdf en utilisant l'outil de ligne de commande pdftk en utilisant le stamp ou background option.

par exemple

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

Cela ne fonctionnera qu'avec un fichier d'arrière-plan d'une page. Si vous avez plusieurs pages, vous pouvez utiliser la commande `multibackground' à la place.

22voto

pi. Points 6026

J'ai réussi à résoudre ce problème (PDF seulement et Python) en utilisant pyPdf et plus particulièrement le fusionPage fonctionnement.

Dans la documentation :

# 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))

Cela devrait suffire pour se faire une idée.

2voto

Mrgreen Points 419

Si vous n'avez affaire qu'à postscript, il y a de fortes chances que les seuls "sauts de page" soient l'opérateur "showpage".
Dans ce cas, vous pouvez simplement récupérer les données postscript du début du premier fichier jusqu'à la première instance de "showpage", faire de même avec l'autre fichier, puis concaténer ces deux morceaux de postscript pour créer votre nouvelle page.

Si les deux fichiers ne sont qu'une seule page, vous pouvez peut-être simplement joindre les deux fichiers.

1voto

Uwe Keim Points 15221

Aspose.Pdf.Kit avec le PdfFileStamp classe peut aussi le faire. Cela fonctionne la plupart du temps correctement.

0voto

Jas Panesar Points 5949

Vous pourriez convertir les deux fichiers PDF en images et en superposer une sur l'autre couche, par exemple.

Une bibliothèque graphique appropriée que vous pourriez utiliser fonctionnerait.

La suggestion de filigrane ci-dessus a également un grand potentiel tant que vous ne rencontrez pas de problèmes dans votre langue ou dans la bibliothèque graphique/pdf de votre choix.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X