Wie vergleiche ich die Unterschiede zwischen zwei PDF-Dateien unter Windows?


205

Kennen Sie eine gute Möglichkeit, PDF-Dateien nebeneinander zu vergleichen und die Änderungen zwischen den beiden anzuzeigen?

Ich suche nach Windows-Software, um dies zu erreichen. Es wäre großartig, wenn Sie sowohl kostenlose als auch unfreie Produkte posten könnten.



1
Es gibt eine KOSTENLOSE Bibliothek zum Vergleichen von PDF-Dateien Pixel für Pixel. Überprüfen Sie dieses Blog: testautomationguru.com/…
Vinoth S

Antworten:


109

Probieren Sie WinMerge mit dem xdocdiff- Plugin aus. Beide sind völlig kostenlos. Ohne weitere Bedingungen.


Ein paar der folgenden Kommentare deuten darauf hin, dass sie keinen Unterschied sehen. Das Plug-In ist also nicht korrekt installiert. Hier ist wie:

  1. xdocdiffPlatzieren Sie die Dateien dort, wo die Readme-Datei des Plugins sagt, dass sie abgelegt werden sollen (es gibt zwei Stellen; ich werde sie hier nicht auflisten, da sich Dateinamen ändern können usw. - lesen Sie die Readme-Datei).

  2. Gehen Sie in WinMerge zu Plugins> List und aktivieren Sie das Kontrollkästchen "Enable Plugins" (dieser Schritt fehlt in der xdocdiffReadme-Datei).

  3. Wählen Sie in WinMerge Plugins> Automatic Unpacking (dies war vor Schritt 2 deaktiviert)

Beim Vergleichen sehen Sie dann, wie Textdateien in den Vergleichsfenstern aussehen.


Versuchte dies, konnte aber keinen Unterschied feststellen, wenn das xdocdiff-Plugin nicht verwendet wurde. Gibt es eine Option zur Auswahl in der Benutzeroberfläche von WinMerge?
Umber Ferrule

1
Wozu wird der Binärtext in einer PDF-Datei angezeigt? Ich habe erwartet, dass die visuellen Unterschiede von i-net PDFC übernommen werden .
JJD

Gab es eine Möglichkeit, Spaltenumbrüche für dieses Handle zu erstellen? Ohne es eine Änderung in mehrere Kaskaden.
Stuart

1
Plugins > List and tick the "Enable Plugins" checkboxhat mir gefehlt!
Seph

In den Textversionen der PDF-
Dateien

168

Unter Linux und Windows können Sie verwenden diffpdf(was sich von den diff-pdfin diesem Thread genannten unterscheidet ).

Bildbeschreibung hier eingeben

Unter Ubuntu installieren mit:

sudo apt-get install diffpdf

Weitere Informationen zum Vergleichen von pds in Text- oder Bildform finden Sie auf dieser UbuntuGeek-Seite .

Für Windows funktioniert diese Diffpdf-Windows-Version wirklich gut. Sie können von http://soft.rubypdf.com/software/diffpdf herunterladen (scrollen Sie nach unten zur statischen Win32-Version ).


12
Die richtige Name ist DiffPDF (wie im Screenshot zu sehen) und es basiert auf Qt 4 und Poppler Bibliothek, so dass es ist tragbar. Siehe DiffPDF-Homepage: qtrac.eu/diffpdf.html . Informationen zum Windows-Build finden Sie hier: soft.rubypdf.com/software/diffpdf . Und Ihre Installationsanleitung funktioniert auch unter Debian.
Przemoc

3
Die DiffPDF-Homepage enthält jetzt auch Links für Linux-, Windows-Installations- und Mac-DMG-Installationen ( qtrac.eu/diffpdf.html ).
Studgeek

6
DiffPDF ist meiner Meinung nach das am weitesten fortgeschrittene Tool, das hier vorgestellt wird. Es bietet nicht nur einen schönen grafischen Vergleich, sondern verfolgt Änderungen auch geschickter als andere, z. B. das xdocdiff für WinMerge. Es gibt jedoch ein ernstes Problem: Es beschränkt den Vergleich auf Seiten. Das heißt, wenn Sie Text auf Seite 2 von Dokument A haben, dieser Text jedoch auf Seite 3 von Dokument B
verschoben wird,

7
Die älteren kostenlosen Versionen finden Sie hier
Shafik Yaghmour

3
Ich habe versucht, dies für einen Roman zu verwenden, den ich als PDF exportiere. Leider verlor das Tool nach ca. 10 Seiten den Überblick und betrachtete alles als "anders", obwohl große Passagen genau gleich waren.
Eric J.

42

Ich habe das kürzlich gefunden und ich liebe es.

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

Plattformübergreifend, kostenlos und funktioniert gut.

Hier ist ein Screenshot von diff-pdfin Aktion - beachten Sie, dass sich der Text im PDF nicht unterscheidet, sondern nur die Schriftarten (und entsprechend die Layouteinstellungen):

diff-pdf.png

Der Aufruf, dieses Bild zu erhalten, lautete:

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

 

... wo testA.pdf / testB.pdf erhalten werden, indem diese einfache Latex-Datei mit pdflatex(entsprechend für jedes pdf, siehe Kommentar) kompiliert wird :

\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}

10
Nur noch eine Notiz diff-pdf: DiffPDF groß ist für eine schnellen visuellen Side-by-Side - Vergleich des geändertenen Textes, aber es ist praktisch unmöglich , zu debuggen Sachen wie, sagen sie, kleine Änderungen in dem Zeilenabstand - diff-pdfauf der anderen Seite, stellt im Grunde die Seiteninhalte aus beiden verglichenen Dateien auf derselben Seite (aber mit unterschiedlicher Farbe) - so können Zeilenabstandsprobleme leicht identifiziert werden ... Prost!
Sdaau

Das ist toll! Gibt es eine Möglichkeit, den Fortschritt großer Dateien bei der Ausgabe in eine PDF-Datei zu verfolgen (ohne die Option --view)? Die ausführliche Option / v scheint nichts zu bewirken. Auch wenn Sie den Befehl zum Generieren einer Vergleichs-PDF ausführen, wird dieser in einem separaten Prozess ausgeführt, sodass die Eingabeaufforderung nicht angehalten wird, wie dies normalerweise der Fall ist, wenn Sie etwas über die Eingabeaufforderung ausführen.
LukeS

Dies ist der, den ich brauchte. Ich vergleiche PDF-Berichte über numerische Ausführungen und suche nach Unterschieden in einer Ziffer auf einer ganzen Seite. Das Problem ist, dass ich die cyanfarbenen Zeichen nicht identifizieren kann, aber zu wissen, wo der Unterschied liegt, reicht aus, um ihn in den Originalberichten zu finden.
Manuelvigarcia

22

Wir mussten auch PDFs in unserem Unternehmen vergleichen und waren mit keiner der gefundenen Lösungen zufrieden . Deshalb haben wir unsere eigene entwickelt: i-net PDFC . Es ist nicht kostenlos, aber wir bieten eine 30-tägige Testversion an.

Es ist in Java geschrieben, also plattformübergreifend.

Bildschirmfoto

Das Besondere daran ist, dass es den Inhalt vergleicht und nicht nur den Text (oder einfach das PDF in ein Bild konvertiert und das Bild vergleicht). Es hat auch ein schönes visuelles Vergleichstool.


1
Nettes Stück Software.
Umber Ferrule

Ich konnte das nicht zum Laufen bringen. Lädt die beiden Dateien und klickt auf den Vergleichsbutton und nichts passiert.
Craig Fisher

1
Behandelt seitenübergreifende Unterschiede korrekt. Hat eine Export- / Druckfunktion. Unterschiedliche Vergleichsprofile (auch benutzerdefiniert). Wenn Sie mit der Maus darüber fahren, erfahren Sie mehr darüber, was sich geändert hat. Sieht großartig aus. Die Nachteile sind die Testversion / Kosten und keine Bewegungen. Definitiv überlegen gegenüber den höher bewerteten Tools der IMO.
Jonathan Gawrych

@ JonathanGawrych danke für die freundlichen Worte! Was genau meinst du mit "bewegt"? Vielleicht könnten wir diese Funktionalität hinzufügen ...
Epaga

@Epaga Wenn ein Textabschnitt von einer Seite auf eine andere verschoben wird, wird er als Löschung und Ergänzung angezeigt. Vergleichen Sie beispielsweise die c ++ - Vorschläge N4663 und N4680 . Siehe Seite 19, ein Beispiel wurde von Absatz 11 nach 8 verschoben, es wird jedoch als Hinzufügung / Streichung behandelt. Um die tatsächlichen Unterschiede zu sehen, müsste man etwas Verschobenes manuell erkennen und dann das Beispiel in ein anderes Diff-Tool kopieren, um zu sehen, dass dem Beispiel Dinge hinzugefügt wurden (unhandled_exception, return_void usw.)
Jonathan Gawrych

12

Sie können auch Adobe Acrobat X verwenden. Es verfügt über eine integrierte PDF-Vergleichsfunktion unter "Ansicht -> Dokumente vergleichen".


1
Acrobat oder Acrobat Reader? Die Reader-Software hat dies nicht
Jason S

4
AcrobatX Pro ist die einzige Version, die diese Funktion bietet. Das "einfach nur AcrobatX" tut das nicht.
Carl Witthoft

2
In Acrobat 9 Pro befindet es sich im Menü "Dokument".
Svinto


10

Ich wollte dies (verschiedene PDFs) vor kurzem mit diesen Anforderungen tun:

  • Leerzeichen, Zeilenumbrüche, Seitenumbrüche usw. ignorieren
  • leicht zu sehen, wenn sich nur ein paar Wörter geändert haben, nicht nur ganze Zeilen / Absätze.
  • Farbdifferentialausgabe

Ich habe pdftotext, wdiff und colordiff installiert, die in verschiedenen Paketmanagern verfügbar sind. (Mit Macports: sudo port install poppler wdiff colordiff)

Dann:

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

Jetzt kann ich sehen, welche Wörter, schön gefärbt, sich geändert haben.

Weitere Informationen: http://philfreo.com/blog/how-to-view-a-color-diff-of-text-from-two-pdfs/

Variation:

Die Verwendung dwdiffkann zu etwas besseren Ergebnissen führen.

Ich wollte auch HTML-Ausgabe, damit dieses winzige Skript eine einfache Webseite mit ein bisschen CSS erstellt.

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

Dann öffnen Sie q.htmlmit Ihrem Webbrowser.

pc-script.bash Datei:

#!/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

Ein Beispiel für die Ausgabe finden Sie hier

Bildbeschreibung hier eingeben


@philcolbourn Google+ wird heruntergefahren, vielleicht den Screenshot über imgur teilen?
25.

fwiw, ich bin auf dieses winzige Repo
gestoßen

Wenn Sie Windows, Mac, Fedora, openSUSE verwenden oder in der Lage sind, die Binärdateien aus dem Quellcode für Ihr System zu kompilieren, ist diff-pdf eine bessere Lösung, um dies zu erreichen, ohne drei verschiedene Abhängigkeiten installieren zu müssen. Nicht zu verwechseln mit diffpdf, wie in einer anderen Antwort erwähnt, die nur über die GUI funktioniert.
Hashim

Beachten Sie, dass das pc-script.bashSkript keine Zeichen für HTML maskiert.
Federico


6

Tolles Tool und einfach zu bedienen: Compare-It v4 (von http://www.grigsoft.com/ )

Vergleicht viele verschiedene Arten von Dateien. Es hat einige eingebaute Konverter, darunter einen für PDF-Dateien.

Ich habe es einige Male mit befriedigenden Ergebnissen verwendet.

Sollte es wirklich versuchen. Testversion ermöglicht den Vergleich für unbegrenzte Zeit.


1
Das war das Beste und Einfachste für mich. Vielen Dank!
Ankur Jain

Das einfachste und einfachste Tool, das ich verwenden konnte. Ich wünschte, ich könnte das mehr als einmal befürworten!
Tschad,

Für PDF scheint der Vergleich in Textform zu sein. Letzte Veröffentlichung im Jahr 2010. Sie können dafür bezahlen, aber sicher, was ist der Unterschied - ich habe keine Einschränkungen festgestellt?
Zitrax


1

Frei, nicht das beste, aber ...

Ich öffne beide Dokumente und lasse sie gegeneinander teilen.

Nicht die praktischste Lösung, aber es funktioniert!

Ich habe noch kein gutes DIFF-Paket für PDF-Dateien gesehen, und obwohl es manuell und ärgerlich ist, funktioniert mein Weg!


Hum ... nicht ganz das, wonach ich gesucht habe, aber danke.
Nelson Reis

Entschuldigung, ich kenne keine gute Antwort, sage aber nur, dass ich noch nie ein gutes Tool für PDF-Dateien gefunden habe.
William Hilsum

3
Kreuzen Sie mit den Augen, damit sich die beiden Kopien überlappen und alle Unterschiede zu flackern scheinen. : D
Endolith

Optimierte Version dieser Methode: Öffnen Sie die beiden PDF - Dateien im Acrobat Reader Vollbild über STRG + L, dann mit STRG + F6 zwischen den PDF - Dateien wechseln, was sich bewegt ist anders ...
Bernard Vander Beken


0

Eine andere weniger als ideale Lösung:

  1. Konvertieren Sie beide PDFs in Microsoft Word-Dokumente über eine der Websites, auf denen dies kostenlos möglich ist .
  2. Verwenden Sie die Dokumentvergleichsfunktion in Word.

Je nachdem, wie komplex die Formatierung in den PDF-Dateien ist und welche Art von Änderungen Sie suchen, ist dies möglicherweise in Ordnung.


In diesem Fall wäre es schwierig, da es viele PDF-Dokumente gibt und die Änderungen sehr häufig vorkommen. Aber danke für den Vorschlag.
Nelson Reis

Auch nicht gut für LaTeX-Ausgabe - ich habe keinen dieser Konverter gefunden, der Ligaturen usw. richtig handhabt.
Chris H

0

Kommerziell: Sie können das Original Adobe Acrobat Professional für satte 449 US-Dollar verwenden:
Vergleichen Sie eine überarbeitete PDF-Datei mit einer früheren Version .

Wenn Sie sich für Acrobat entscheiden, sind die Kommentare auf dieser Seite für die Verwendung von Acrobat relevant.


"für satte 449 Dollar" ... und wie viel MB Festplattenspeicher?
Hugh Allen

3
@Hugh Allen: Verdammt viel Speicherplatz und ein paar Zehntausende von Einträgen in der Registrierung. Eine echte Bloatware.
Harrymc

Aktualisierter Hilfeartikel
Squig

Und es ist trotzdem fehlerhaft
Michal Sokolowski


0

Für eine sehr einfache Form des synchronisierten Bildlaufs zwischen zwei PDF-Dateien können Sie das folgende von mir geschriebene Autohotkey-Skript verwenden. Es wird davon ausgegangen, dass Sie zwei SumatraPDF-Fenster geöffnet haben. Drücken Sie in beiden Fenstern nach rechts, um zur nächsten Seite zu gelangen. Drücken Sie nach links, um zur vorherigen Seite zu gelangen.

#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

Ich habe diese (nicht ideale, aber für mich ausreichende) Lösung verwendet:

  • PDF in einfachen Text konvertieren (in meinem Fall mit Adobe Reader, kostenlose App)
  • Verwenden Sie opendiff (im Lieferumfang von XCode enthalten, kostenlos) und sehen Sie sich die Änderungen an


0

Es gibt auch kostenlose Online- https : //www.diffchecker.com/diff .

Es werden jedoch nur Textunterschiede ohne Bilder und Formatierung hervorgehoben. Und es ist zu schwach, um unveränderte Fragmente in großen Dateien abzugleichen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.