Il existe de nombreux logiciels dans Windows permettant de fusionner des fichiers PDF, mais comment pouvons-nous faire de même dans Ubuntu?
Il existe de nombreux logiciels dans Windows permettant de fusionner des fichiers PDF, mais comment pouvons-nous faire de même dans Ubuntu?
Réponses:
Si vous voulez un outil avec une interface graphique simple, essayez pdfshuffler . Il permet la fusion de fichiers PDF ainsi que la réorganisation et la suppression de pages. Pdftk est bien entendu plus puissant pour le traitement par lots et / ou les tâches plus complexes.
pdfshuffler
bien le 14.04 amd64.
Pour fusionner deux fichiers pdf file1.pdf
et file2.pdf
:
pdftk file1.pdf file2.pdf cat output mergedfile.pdf
Plus d'infos disponibles ici Way Back Machine .
cat
et output
les arguments d'entrée variables sont suivis d'un argument de sortie.
Ghostscript est un package (disponible par défaut dans Ubuntu) qui vous permet d'afficher ou d'imprimer des fichiers PostScript et PDF dans d'autres formats, ou de convertir ces fichiers dans d'autres formats.
Pour utiliser Ghostscript pour combiner des fichiers PDF, tapez quelque chose comme ce qui suit:
gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -dAutoRotatePages=/None -sOutputFile=finished.pdf file1.pdf file2.pdf
Voici une brève explication de la commande:
gs starts the Ghostscript program.
-dBATCH once Ghostscript processes the PDF files, it should exit.
If you don't include this option, Ghostscript will just keep running.
-dNOPAUSE forces Ghostscript to process each page without pausing for user interaction.
-q stops Ghostscript from displaying messages while it works
-sDEVICE=pdfwrite
tells Ghostscript to use its built-in PDF writer to process the files.
-sOutputFile=finished.pdf
tells Ghostscript to save the combined PDF file with the specified name.
-dAutoRotatePages=/None
Acrobat Distiller parameter AutoRotatePages controls the automatic orientation selection algorithm: For instance: -dAutoRotatePages=/None or /All or /PageByPage.
Vos fichiers d'entrée n'ont même pas besoin d'être des fichiers PDF. Vous pouvez également utiliser des fichiers PostScript ou EPS, ou tout mélange des trois.
Vous pouvez faire beaucoup de choses avec Ghostscript. Vous pouvez lire sa documentation pour plus de détails.
pdftk
a pris 0m0,484s, a gs
pris 1m32,898s (c'est près de 200 fois plus lent) Le fichier à partir gs
était environ 21% plus petit.
file1.pdf file2.pdf
parfile*.pdf
gs
travaillé avec des PDF "non conformes" pdftk
qui ne fonctionneraient jamais.
-dPDFSETTINGS=/prepress
option d'amélioration de la qualité. Tous nos remerciements au contributeur
file*.pdf
par file1.pdf file2.pdf
avant de passer les arguments à la commande.
Vous utilisez également pdfunite pour fusionner des documents pdf:
pdfunite in-1.pdf in-2.pdf in-n.pdf out.pdf
out.pdf
sera écrasé sans avertissement et pdfunite *.pdf
ne fonctionnera donc pas comme prévu.
cp
écrase également le dernier argument sans avertissement. Ceci est juste pour les utilisateurs pressés (comme moi) - J'ai eu de la chance d'avoir une sauvegarde du fichier en question ...
PDFChain est une très bonne solution. Son interface graphique est une interface de PDFTK où vous pouvez fusionner, diviser ou même ajouter un peu d’arrière-plan à vos fichiers PDF.
apt
n'a donné aucun résultat non plus: /
Une autre approche consiste à utiliser Latex comme expliqué dans ce message ( sans accès root, en supposant que pdflatex est installé): https://tex.stackexchange.com/questions/8662/merge-two-pdf-files-output-by- latex
Ceci est utile si vous ne possédez pas les outils mentionnés ni les privilèges root, mais vous avez pdflatex.
Je copie le code tex ci-dessous pour fusionner file1.pdf
et file2.pdf
. Créez un fichier appelé output.tex
et mettez:
\documentclass{article}
\usepackage{pdfpages}
\begin{document}
\includepdf[pages=-]{file1}
\includepdf[pages=-]{file2}
\end{document}
Et pour compiler, utilisez simplement: pdflatex output.tex
Le fichier fusionné sera nommé comme output.pdf
.
J'utilise pdfseparate pour extraire des pages spécifiques d'un gros fichier pdf:
pdfseparate -f 156 -l 157 input.pdf output_%d.pdf
pdfseparate -f 1 -l 2 input.pdf output_%d.pdf
et ensuite je les rejoint tous via la commande:
pdfunite $(ls -v output_*.pdf | tr '\n' ' ') out$(date +%Y-%m-%d_%H_%M_%S ).pdf
Cela rejoint:
output_1.pdf output_2.pdf output_156.pdf output_157.pdf
dans:
out2014-12-14_23_25_36.pdf
Peut-être y a-t-il un moyen plus facile de faire face ... :-)
pdfunite output_*.pdf out$(date +%Y-%m-%d-%H_%M_%S).pdf
mais il lui manque l'ordre ls -v
. Une solution évidente et triviale consiste à nommer vos fichiers de manière à ce qu'ils soient triés naturellement dans l'ordre dans lequel vous souhaitez les inclure. Si vous le souhaitez absolument ls -v
, vous pouvez au moins perdre le tuyau tr
, ce qui n’apporte rien ici.
Utilisez pdfsam http://www.pdfsam.org/ c'est très bon pour scinder et fusionner des pdfs
Vous pouvez utiliser pdftk pour fusionner et modifier des documents PDF en général. Sinon, il existe un service en ligne pour le faire: http://www.pdfmerge.com/
Voici mon approche:
Voici le résultat:
#!/bin/sh
CLEANED_FILE_PATHS=$(echo $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS | sed 's,.pdf /home/,.pdf\\n/home/,g')
echo $CLEANED_FILE_PATHS | bash -c 'IFS=$'"'"'\n'"'"' read -d "" -ra x;pdfunite "${x[@]}" merged.pdf'
Juste coller ce script dans
/home/votre_nom_utilisateur/.local/share/nautilus/scripts
et nommez-le "merge_pdfs.sh" (par exemple). Ensuite, rendez-le exécutable (cliquez avec le bouton droit sur merge_pdfs.sh -> onglet Autorisations -> cochez la case "Autoriser l'exécution du fichier en tant que programme"
Alors maintenant, pour fusionner des fichiers pdf, il vous suffit de les sélectionner -> clic droit -> scripts -> merge_pdfs.sh et cela créera un fichier "merged.pdf" dans le même répertoire
J'espère que ça aide!