Conversion d'un PDF en un avec plusieurs pages par feuille via la ligne de commande

11

Disons que je veux slides.pdfcontenir 4 diapositives par page.

Je peux ouvrir un slides.pdfdocument sous evince (la visionneuse de documents Ubuntu par défaut)

evince slides.pdf-> Imprimer -> Mise en page -> Pages par face -> 4 (ou un autre numéro)

Ensuite, je peux indiquer que je souhaite imprimer dans un fichier et imprimer. Le résultat est un output.pdffichier avec le nombre souhaité de diapositives par feuille.

Je veux obtenir cette même fonctionnalité via la ligne de commande (car j'ai besoin de l'incorporer dans un script). Tout ce que j'ai trouvé jusqu'ici, ce sont des solutions reposant sur des outils externes. Par exemple, j'ai essayé d'installer pdfjam(ce qui m'a obligé à installer 88,1 Mo de paquets texlive-latex-basepour obtenir une fonctionnalité que j'ai déjà!), Le résultat n'a été qu'un échec avec pdfjam ERROR: LaTeX package pdfpages.sty is not installed.

Je préfère éviter les packages externes.

Comment puis-je y parvenir via la ligne de commande?

user84207
la source

Réponses:

2

pour effectuer une IMPOSITION , rien de mieux que Multivalent.jar (dernière version gratuite avec des outils à l'intérieur, dernière version Multivalent actuellement hébergée sur sourceforge - 2009 - n'a plus d'outils pdf)

vous pouvez télécharger la version Multivalent.jar avec des outils à partir de:

homme en ligne - http://multivalent.sourceforge.net/Tools/pdf/Impose.html

utilisation:

java -cp path...to/Multivalent.jar tool.pdf.Impose -dim (rowsxcols) -paper (paper sizes where pages will be imposed) file.pdf
Dingo
la source
Je vous remercie! J'ai utilisé votre solution. Il est simple, non gonflé, autonome et multiplateforme. Parfait.
user84207
Sur la forge source, les outils PDF ont été supprimés en raison de problèmes de droit d'auteur: sourceforge.net/p/multivalent/discussion/252478/thread/e7850c31/…
Loren
20

Vous pouvez également utiliser pdfnup:

pdfnup --nup 2x2 --no-landscape file.pdf

où 2x2 fait référence à 2 lignes par 2 colonnes (ou l'inverse - je ne suis pas sûr). Voir man pdfnup pour plus d'options.

Paul Robert
la source
3
pdfnupfonctionne bien. Une note pour les personnes qui souhaitent mettre le même PDF d'une page quatre fois sur une seule page: Vous devez répertorier le fichier pdf d'entrée quatre fois:pdfnup --no-landscape --a4paper --nup 2x2 input.pdf input.pdf input.pdf input.pdf
guettli
1
Un ajout à la réponse + commentaire ci-dessus: pdfnup --nup 2x2 --frame true --noautoscale false --delta "0.2cm 0.3cm" --scale 0.90 your.pdfimprimera 4 diapositives sur une page d'un fichier pdf nommé "your-nup.pdf" en utilisant le contenu de "your.pdf" comme pages d'entrée. --frame trueimprime un cadre autour de chaque diapositive, --delta...spécifie une marge entre les cadres et --scale ...garantit qu'une marge de feuille est introduite afin que votre imprimante gère bien le travail sans couper le contenu. Toutes les options sur www2.warwick.ac.uk/fac/sci/statistics/staff/academic-research/… .
Cbhihe
Paul Robert: Je sais que votre réponse est ancienne mais n'hésitez pas à incorporer mon commentaire dans votre réponse. Je ne peux pas parler pour @guettli. Tout fonctionne bien pour Ubuntu au moins jusqu'à 16.04. (Je ne l'ai pas testé sur une distribution continue avec les dernières images et packages du noyau.) A bientôt.
Cbhihe
BTW, pdfnup utilise en interne le package pdfpages.sty, que l'op ne voulait pas utiliser. J'ai le sentiment inverse: je vais utiliser le paquet pdfpages.sty dans TexStudio pour faire le travail.
Dominic108