Frage

ich brauche große Zahl von PDF-Dateien für sie optischen Inhalt zu vergleichen. Da die PDF-Dateien auf unterschiedlichen Plattformen und mit unterschiedlichen Versionen der Software erstellt wurde, gibt es strukturelle Unterschiede. Zum Beispiel:

  • das Chunking von Text kann unterschiedlich sein
  • der Schreibauftrag kann unterschiedlich sein
  • kann die Position einige Pixel werden abweichen

Es sollte den Inhalt wie ein Mensch Menschen und nicht die innere Struktur vergleichen. Ich möchte Test für Regressionen zwischen den verschiedenen Versionen des PDF-Generator, die wir verwendet.

War es hilfreich?

Lösung

Da es kein solches Werkzeug zur Verfügung, ist, dass wir eine geschrieben haben. Sie können laden Sie die i-net PDF Inhalt Vergleich und verwenden. Ich hoffe, dass hilft andere mit dem gleichen Problem. Wenn Sie Probleme damit haben, oder Sie haben Feedback für uns, dann können Sie unseren Support.

eingeben Bild Beschreibung hier

Andere Tipps

Es ist eigentlich ein diffpdf Werkzeug.

http://www.qtrac.eu/diffpdf.html

Ihre Schwäche ist, dass es nicht gut reagiert, wenn Ergänzungen neuen Text Verschiebung machen teilweise auf eine neue Seite. Zum Beispiel soll, wenn alte Seite 4 bis zum Ende der Seite 5 und Anfang Seite 6 verglichen werden, müssen Sie Parameter verschieben separat die beiden Scheiben zu vergleichen.

Ich habe ein selbstgebackenes Skript verwendet welche

  • konvertiert alle Seiten auf zwei PDFs in Bitmaps
  • Farben Seiten von PDF 1 bis rot-auf-weiß
  • Änderungen weiß transparent auf den Seiten von PDF 2
  • Overlays jede Seite von PDF 2 oben auf der entsprechenden Seite von PDF 1
  • läuft Umwandlung / Färbung und parallel auf mehreren Kernen Übereinander

Verwendete Software:

  • Ghostscript für PDF-to-Bitmap-Umwandlung
  • ImageMagick zur Farbgebung, Transparenz und Overlay
  • inotify zur Synchronisation paralleler Prozesse
  • jede PNG-fähige Bildbetrachter für die Überprüfung des Ergebnisses

Vorteile:

  • einfache Implementierung
  • alle verwendeten Werkzeuge sind Open Source
  • groß für die Suche nach kleinen Unterschieden in Layout

Nachteile:

  • die Umwandlung ist langsam
  • große Unterschiede zwischen PDF-Dateien (z Paginierung) Ergebnis in einem Chaos
  • Bitmaps sind nicht zoombar
  • funktioniert nur gut für Schwarz-Weiß-Text und Grafiken
  • keine einfach zu bedienende GUI

Ich habe für ein Werkzeug gesucht, die das gleiche auf PDF / Postscript Level tun würden.

Hier ist, wie unser Skript die Dienstprogramme aufruft (beachten Sie, dass ImageMagick verwendet Ghost hinter den Kulissen die PDF-> PNG Konvertierung zu tun):

$ convert -density 150x150 -fill red -opaque black +antialias 1.pdf back%02d.png
$ convert -density 150x150 -transparent white +antialias 2.pdf front%02d.png
$ composite front01.png back01.png result01.png # do this for all pairs of images

Ich scheine nicht in der Lage sein, dies hier zu sehen, so ist es hier: über Super-User: Wie die Unterschiede zwischen zwei PDF-Dateien vergleichen? (Antwort # 229891, von @slestak) gibt es

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

(Build Schritte für Ubuntu Natty in gefunden werden kann: get-diff-pdf.sh )

Soweit ich sehen kann, überlagert es im Grunde des Text / Grafik von jeder Seite im pdf (s), so dass Sie leicht, um zu sehen, ob es irgendwelche Änderungen waren ...

Prost!

Wir haben auch verwendet pdftotext (Sklivvz Antwort sehen) ASCII-Versionen von PDF-Dateien zu erzeugen und wdiff sie vergleichen.

Mit pdftotext des -layout Schalter Lesbarkeit zu verbessern und eine Vorstellung von Änderungen im Layout erhalten.

Um schöne farbige Ausgabe von wdiff zu erhalten, benutzen Sie diesen Wrapper-Skript:

#!/bin/sh
RED=$'\e'"[1;31m"
GREEN=$'\e'"[1;32m"
RESET=$'\e'"[0m"
wdiff -w$RED -x$RESET -y$GREEN -z$RESET -n $1 $2

Ich denke, Ihr bester Ansatz wäre, die PDF-Bilder in annehmbarer Auflösung zu konvertieren und als dies ein Bild vergleichen.

Um Bilder aus PDF generieren Sie Adobe PDF Library oder die vorgeschlagene Lösung unter Die beste Weg, um pDF-Dateien tIFF-Dateien .

konvertieren

die erzeugten TIFF-Dateien vergleichen Ich fand GNU tiffcmp (für Fenster Teil des GnuWin32 tiff ) und tiffinfo gute Arbeit geleistet hat. Verwenden Sie tiffcmp -l und zählen die Anzahl der Zeilen der Ausgabe keine Unterschiede zu finden. Wenn Sie glücklich sind, eine geringe Menge an Inhaltsänderung zu haben (beispielsweise Anti-Aliasing-Unterschiede) dann tiffinfo verwenden, um die Gesamtzahl der Pixel zu zählen, und Sie können dann einen prozentualen Differenzwert erzeugen.

Durch die Art und Weise für jeden einfachen PDF-Vergleich zu tun, wo die Struktur nicht geändert hat, ist es möglich, Kommandozeilen-diff zu verwenden und bestimmte Muster zu ignorieren, z.B. mit GNU diff 2.7:

diff --brief -I xap: -I xapMM: -I /CreationDate -I /BaseFont -I /ID --binary --text

Das hat immer noch das Problem, dass es nicht immer Änderungen in generierten Font-Namen fangen wird.

Unser Produkt, PDF Vergleicher - http://www.premediasystems.com/pdfc.html“- wird dies tun, ganz elegant und effizient Es ist auch nicht frei, und ist ein Mac OS X nur Anwendung

..

nach Ihren Bedürfnissen, um ein Textkonvertierungs-Lösung wäre die einfachste und direkteste sein. Ich glaube die Bitmap Idee war ziemlich cool.

Bluebeams pdf-Software wird dies für Sie tun

Sie können Batch vergleichen pdf Dateien mit Tarkware Pdf Comparer. Aber es ist nicht kostenlos und erfordert Adobe Acrobat.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top