compress - resize pdf linux




Fusionner des PDF avec PDFTK avec des signets? (7)

Ce qui suit se veut un commentaire à la réponse par pdfmerger ( https://stackoverflow.com/a/30524828/3915004 ).

Merci pour votre script pdfmerger! Je sais que la question est marquée Linux, mais pour généraliser votre script pour Mac OS X, 2 choses sont nécessaires:

  • Ghostscript gs et
  • la commande pdfinfo (qui est incluse par exemple dans poppler )

Installez-les en obtenant le premier brew (google, il est installé via une commande curl / ruby-magic ^^) et ensuite simplement:

brew install ghostscript
brew install poppler

ADD-ON: LISEZ LE FICHIER TEXTE AVEC LES TITRES DE CHAPITRE:

Pour développer votre script. J'utilise ce flux de travail principalement pour les livres disponibles sous forme de téléchargements de chapitres sur le site Web des éditeurs. Un fichier texte contenant les noms de chapitre peut facilement être généré. Le complément suivant à votre code lit en outre un fichier texte 'chapters.txt' contenant une ligne par pdf à fusionner. (Remarque, je n'ai pas implémenté de vérification du nombre de lignes correspondant au nombre de fichiers PDF.)

Développez simplement votre script en remplaçant les lignes suivantes:

p = subprocess.Popen('ls *pdf', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
c = subprocess.Popen('less chapters.txt', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)

pdfdateien = []
kombinationen = []
chapternames = []

for line in c.stdout.readlines():
# c contains all chapter-titles
  chapternames.append(line)

for line in p.stdout.readlines():

et

for index, kombination in enumerate(kombinationen):
#  dateiname = kombination[0][0:len(kombination[0])-5]
#
# Hier noch dateiname evtl. verwursten
# z. B.
#  lesezeichen = dateiname[0:1]+" "+dateiname[6:8]+"/"+dateiname[1:5]
#  lesezeichen = dateiname
  lesezeichen=chapternames[index][:-1]

  anz_seiten = kombination[1][16:len(kombination[1])-1]

Utiliser pdftk pour fusionner plusieurs fichiers pdf fonctionne bien. Cependant, n'importe quel moyen facile de créer un signet pour chaque pdf a été fusionné?

Je ne vois rien sur les documents pdftk à ce sujet, donc je ne pense pas que ce soit possible avec pdftk.

Tous nos fichiers fusionnés seront de 1 page, alors vous vous demandez si un autre utilitaire peut ajouter des signets après?

Ou un autre utilitaire pdf basé sur Linux qui permettra de fusionner tout en spécifiant un signet pour chaque pdf individuel.


Il y a PdfMod . Il possède une interface graphique et vous permet d'ajouter des signets manuellement. De plus, si vous modifiez un PDF déjà fourni avec des signets, il les mettra à jour automatiquement pour pointer vers les pages appropriées.


La bonne réponse de @pipitas ne résout pas les problèmes de signets mis au point, et la question liée à la discussion unix est liée https://unix.stackexchange.com/questions/17065/add-and-edit-bookmarks-to-pdf/31070 , où je suggère

Si vous vous en tenez toujours aux scripts unix, alors

  1. extraire les données de signet vidées de pdftk
  2. écrire un script supplémentaire pour convertir les données de signet vidées au format pdfmarks, quelle commande ghostscript est acceptée.
  3. utiliser le script gs pour les fusionner avec les pdfmarks

Le script existe déjà, consultez pdf-merge.py partir de pdf-merge.py PDF fusionnés avec PDFTK avec des signets?


Malheureusement, il n'y a pas de moyen facile de le faire. Vous pouvez utiliser la bibliothèque sur laquelle pdftk est construit directement et écrire un programme Java ou un programme .NET utilisant iText ou iTextSharp pour fusionner vos one-pagers et créer les signets. Si vous voulez aller sur la route iText, il existe de nombreux exemples disponibles en ligne ou dans le livre iText (écrit par l'auteur d'iText).

... ou laissez-moi savoir ce qui ne fonctionne pas et je peux vous aider.


Pour ajouter ou modifier des signets PDF, vous pouvez utiliser JPdfBookmarks . C'est un excellent outil logiciel libre multi-OS que j'utilise depuis un certain temps avec d'excellents résultats. Cependant, il ne concerne que les signets. Il vous faut donc un autre outil pour fusionner ou réorganiser les pages. En plus de pdftk, je vous suggère d’essayer PDF Split et Merge (bonne application, mais interface utilisateur bizarre, désordre des signets de mon expérience), PDF-Shuffler (semble fonctionner correctement, mais se fige parfois avec certains fichiers), ou PdfMod (le Le mieux, potentiellement, car il s'agit de réorganiser, fusionner et gérer les signets, même si je n'ai pas été en mesure de comprendre comment ajouter des PDF dans une page spécifique.

Désolé de ne pas fournir de liens, le système ne me permet d’ajouter que 2 hyperliens.


Voir cette réponse sur https://.com/a/17781138/547578 . J'ai utilisé quelque chose appelé Sejda. Ça marche. Il combine parfaitement les signets. Merci @blablatros.


Sejda PDF (qui a été suggéré dans l' une des réponses ) est également disponible sous forme de service en ligne: https://www.sejda.com/merge-pdf .

Cela peut s'avérer utile si vous ne souhaitez pas installer de logiciel supplémentaire et préférez travailler en ligne à partir d'un navigateur.

Étapes à suivre pour fusionner:

  1. Faites glisser et déposez tous les fichiers PDF sur la page Web
  2. Par défaut, tous les signets existants sont conservés et fonctionneront également dans le document fusionné .

  3. L'outil de fusion peut éventuellement créer une table des matières en fonction des documents PDF combinés.

Le service en ligne pour fusionner des fichiers PDF est libre d'utiliser jusqu'à 30 fichiers par heure et des fichiers allant jusqu'à 50 Mo / 200 pages.

Disclaimer: Je suis un développeur open source travaillant sur Sejda.





ghostscriptsharp