web-dev-qa-db-fra.com

Comment comparer les différences entre deux PDF fichiers sur Windows?

Connaissez-vous un bon moyen de comparer PDF fichiers côte à côte et d'afficher les modifications apportées entre les deux?

Je cherche un logiciel Windows pour y parvenir. Ce serait formidable si vous pouvez publier des produits gratuits et non gratuits.

203
Nelson Reis

Essayez WinMerge avec le xdocdiff plugin. Les deux sont totalement gratuits. Sans attaches.


Quelques commentaires ci-dessous suggèrent qu’ils ne voient aucune différence. Cela signifie que le plug-in n'est pas installé correctement. Voici comment:

  1. Mettez les fichiers où le fichier readme du plugin xdocdiff dit de les mettre (il y a deux endroits; je ne les énumérerai pas ici car les noms de fichiers peuvent changer, etc. - lisez le readme)

  2. Dans WinMerge, allez à Plugins> List et cochez la case "Enable Plugins" (cette étape manque dans le fichier Lisez-moi xdocdiff)

  3. Dans WinMerge, choisissez Plugins> Unpacking automatique (cette option était désactivée avant l'étape 2).

Ensuite, lors de la comparaison, vous verrez à quoi ressemblent des fichiers texte dans les fenêtres de comparaison.

108
Kenneth Cochran

Sous Linux et Windows, vous pouvez utiliser diffpdf (qui diffère de diff-pdf mentionné dans ce fil).

enter image description here

Sur Ubuntu, installez en utilisant:

Sudo apt-get install diffpdf

Voir plus loin cette page UbuntuGeek sur la comparaison visuelle ou visuelle de pds .

Pour Windows , cette version Diffpdf Windows fonctionne vraiment bien. Vous pouvez télécharger à partir de http://soft.rubypdf.com/software/diffpdf (faites défiler jusqu'à version statique Win32).

167
emacsomancer

J'ai récemment découvert cela et je l'aime.

https://github.com/vslavik/diff-pdf

Cross plate-forme, gratuit et fonctionne bien.

Voici une capture d'écran de diff-pdf en action - notez que le texte n'est pas différent dans le PDF, mais uniquement dans les polices (et les paramètres de mise en page correspondants):

diff-pdf.png

L'appel pour obtenir cette image était:

diff-pdf --view testA.pdf testB.pdf

... où testA.pdf/testB.pdf sont obtenus en compilant ce fichier Latex simple avec pdflatex (en conséquence, pour chaque pdf, voir le commentaire):

\documentclass[12pt]{article}


                        % without mathpazo: testA.pdf
\usepackage{mathpazo} % with mathpazo: testB.pdf
\usepackage{lipsum}


\title{A brand new test}
\author{Testulio}

\begin{document}

\maketitle

\lipsum[1-3]

\end{document}
40
slestak

Nous avions également besoin de comparer les fichiers PDF de notre entreprise et n'étant satisfaits d'aucune des solutions trouvées, nous avons donc créé notre propre: i-net PDFC . Ce n'est pas gratuit, mais nous proposons un essai de 30 jours.

C'est écrit en Java, donc c'est multi-plateforme.

screenshot

Ce qui le rend spécial, c'est qu'il compare le contenu plutôt que seulement le texte (ou tout simplement la conversion du pdf en une image et la comparaison de l'image). Il dispose également d'un bel outil de comparaison visuelle.

21
Epaga

Vous pouvez également utiliser Adobe Acrobat X. Il dispose de la fonctionnalité de comparaison PDF sous "Affichage -> Comparaison de documents.

12
Babak Farrokhi

Je voulais faire cela (PDF diff) récemment avec ces exigences:

  • ignorer les espaces, les sauts de ligne, les sauts de page, etc.
  • voir facilement quand seulement quelques mots ont changé, pas seulement des lignes/paragraphes entiers.
  • sortie couleur diff

J'ai installé pdftotext, wdiff et colordiff, disponibles dans divers gestionnaires de paquets. (Avec macports: Sudo port install poppler wdiff colordiff)

Ensuite:

wdiff <(pdftotext old.pdf -) <(pdftotext new.pdf -) | colordiff

Maintenant, je peux voir quels mots, joliment colorés, ont changé.

Plus de détails: http://philfreo.com/blog/how-to-view-a-color-diff-of-text-from-two-pdfs/

Variation:

Utiliser dwdiff peut produire des résultats légèrement supérieurs.

Je voulais aussi une sortie HTML afin que ce petit script crée une page Web de base avec un peu de CSS.

bash pc-script.bash old.pdf new.pdf > q.htlm

Ensuite, ouvrez q.html avec votre navigateur Web.

pc-script.bash fichier:

#!/bin/bash

OLD="$1"
NEW="$2"

cat <<EOF
<html><head><meta charset="UTF-8"/><title>Changes from $OLD to $NEW</title></head><style>
.plus  { color: green; background: #E7E7E7;                                }
.minus { color: red;   background: #D7D7D7; text-decoration: line-through; }
</style><body><h1>Changes from [ <span class="minus">$OLD</span> ] to [ <span class="plus">$NEW</span> ]</h1><pre>
EOF

dwdiff -i -A best -P      \
  --start-delete='<span class="minus">' --stop-delete='</span>' \
  --start-insert='<span class="plus" >' --stop-insert='</span>' \
  <( pdftotext -enc UTF-8 -layout "$OLD" - )   \
  <( pdftotext -enc UTF-8 -layout "$NEW" - )   \

cat <<EOF
</pre></body></html>
EOF

Un exemple de sortie peut être vu ici

 enter image description here

9
philfreo

Si vous comparez du texte dans un pdf, alors Au-delà de comparer fait ceci.

Pas gratuit, mais il y a un essai de trente jours.

7
sgmoore

Excellent outil et facile à utiliser: Compare-It v4 (from http://www.grigsoft.com/ )

Compare de nombreux types de fichiers. Il comporte des convertisseurs intégrés, dont un pour les fichiers PDF.

Je l'ai utilisé plusieurs fois avec des résultats satisfaisants.

Vraiment devrait essayer cela. La version d'évaluation permet la comparaison pour une durée illimitée.

6
WimV

Je ne le sais pas, mais il y a aussi comparePDF (pas gratuit, mais un essai gratuit de 30 jours): http://www.compare-pdf.com/download.htm

2
Robert

Gratuit, pas le meilleur mais ...

J'ouvre les deux documents et les divise en écrans l'un contre l'autre.

Pas la solution la plus pratique, mais ça marche!

Je n'ai pas vu un bon package DIFF pour les fichiers PDF et bien que manuel et ennuyeux, ma méthode fonctionne!

1
William Hilsum

Ici vous pouvez télécharger deux pdf et récupérer le troisième qui vous montrera la différence entre les deux.

Fonctionne sur toutes les plates-formes, il n'y a rien d'apprendre ou d'installer et c'est gratuit.

https://synodins.com/apps/pdf_difference/intro.html

1
Hermann Ingjaldsson

Pour une forme très primitive de défilement synchronisé entre deux fichiers pdf, vous pouvez utiliser le script autohotkey suivant que j'ai écrit. Cela suppose que deux fenêtres SumatraPDF soient ouvertes. Appuyez à droite pour aller à la page suivante dans les deux fenêtres, appuyez à gauche pour la page précédente.

#IfWinActive ,SumatraPDF
Right::
orig := WinExist("A")
WinGet, outvar, List, SumatraPDF
win1 := outvar1
win2 := outvar2
WinActivate, ahk_id %win1%
sendinput {Right}
WinActivate, ahk_id %win2%
sendinput {Right}
WinActivate, ahk_id %orig%
return

Left::
orig := WinExist("A")
WinGet, outvar, List, SumatraPDF
win1 := outvar1
win2 := outvar2
WinActivate, ahk_id %win1%
sendinput {Left}
WinActivate, ahk_id %win2%
sendinput {Left}
WinActivate, ahk_id %orig%
return
0
ivanatpr

J'ai utilisé cette solution (non idéale, mais suffisante pour moi):

  • Convertir PDF en texte brut (dans mon cas, avec Adobe Reader, application gratuite)
  • Utilisez opendiff (inclus avec XCode, gratuit) et voyez les modifications
0
Ciryon

Une autre solution moins qu'idéale:

  1. Convertissez les deux PDF en documents Microsoft Word à l'aide de l'un des sites Web qui le font gratuitement .
  2. Utilisez la fonctionnalité de comparaison de documents dans Word.

En fonction de la complexité de la mise en forme dans les fichiers PDF et du type de modifications que vous souhaitez, cela peut être correct.

0
Dave Webb

Commercial: vous pouvez utiliser le logiciel Adobe Acrobat Professional d’origine pour 449 USD:
Comparez un PDF révisé à une version antérieure .

Si vous choisissez Acrobat, les commentaires sur cette page sont pertinents à son utilisation.

0
harrymc

pdf-diff est un paquet Python à cette fin.

0
Ioannis Filippidis

Diff Doc - pas libre.

0
Rook

Il existe également un accès gratuit en ligne https://www.diffchecker.com/diff .

Mais il ne met en évidence que les différences de texte sans images ni formatage. Et il est trop faible pour faire correspondre des fragments non modifiés dans des fichiers volumineux.

0
Vadzim