diffpdf
Zur Navigation springen
Zur Suche springen
Mit dem Shell-Befehl diffpdf lassen sich zwei PDF-Dateien vergleichen.
Installation
Ubuntu 12.04 Precise Pangolin
$ sudo apt-get install diffpdf
Verwendung
Vergleich zweiter PDF-Dateien.
$ diffpdf datei1.pdf datei2.pdf
Weblinks
- http://www.ubuntugeek.com/diffpdf-compare-two-pdf-files-textually-or-visually.html
- http://askubuntu.com/questions/40813/diff-of-two-pdf-files
Unter dem zweiten Link ist folgendes Skript zu finden, das die Pakete "pdfjam", "poppler-utils" (mit "pdfinfo") und "diffpdf" voraussetzt.
#!/bin/bash # # Compare two PDF files. # Dependencies: # - pdfinfo (xpdf) # - pdfjam (texlive-extra-utils) # - diffpdf MAX_HEIGHT=15840 #The maximum height of a page (in points), limited by pdfjam. TMPFILE1=$(mktemp /tmp/XXXXXX.pdf) TMPFILE2=$(mktemp /tmp/XXXXXX.pdf) usage="usage: scrolldiff -h FILE1.pdf FILE2.pdf -h print this message v0.0" while getopts "h" OPTIONS ; do case ${OPTIONS} in h|-help) echo "${usage}"; exit;; esac done shift $(($OPTIND - 1)) if [ -z "$1" ] || [ -z "$2" ] || [ ! -f "$1" ] || [ ! -f "$2" ] then echo "ERROR: input files do not exist." echo echo "$usage" exit fi # Get the number of pages: pages1=$( pdfinfo "$1" | grep 'Pages' - | awk '{print $2}' ) pages2=$( pdfinfo "$2" | grep 'Pages' - | awk '{print $2}' ) numpages=$pages2 if [[ $pages1 > $pages2 ]] then numpages=$pages1 fi # Get the paper size: width1=$( pdfinfo "$1" | grep 'Page size' | awk '{print $3}' ) height1=$( pdfinfo "$1" | grep 'Page size' | awk '{print $5}' ) width2=$( pdfinfo "$2" | grep 'Page size' | awk '{print $3}' ) height2=$( pdfinfo "$2" | grep 'Page size' | awk '{print $5}' ) if [ $(bc <<< "$width1 < $width2") -eq 1 ] then width1=$width2 fi if [ $(bc <<< "$height1 < $height2") -eq 1 ] then height1=$height2 fi height=$( echo "scale=2; $height1 * $numpages" | bc ) if [ $(bc <<< "$MAX_HEIGHT < $height") -eq 1 ] then height=$MAX_HEIGHT fi papersize="${width1}pt,${height}pt" # Make the scrolls: pdfj="pdfjam --nup 1x$numpages --papersize {${papersize}} --outfile" $pdfj "$TMPFILE1" "$1" $pdfj "$TMPFILE2" "$2" diffpdf "$TMPFILE1" "$TMPFILE2" rm -f $TMPFILE1 $TMPFILE2