diffpdfc is used to compare two PDF files—textually or visually.

C:\> diffpdfc.exe

diffpdfc is for comparing PDF files. It is a commercial console (command line) program for Windows.

diffpdfc can say whether two PDFs are the same or different, and it can optionally output one or more reports that show any differences. The reports can be textual in .csv (Excel), .json, and .xml format and visual in .png and .pdf format. Multiple reports can be output at the same time.

Comparisons can be made based on the text regardless of layout, or based on appearance (which accounts for fonts, colors, layout, diagrams, images, etc.)

diffpdfc is useful for anyone who needs to compare PDF documents, reports, books, or labels—for example, archivists, engineers, journalists, packagers, publishers, researchers, software testers, and translators. diffpdfc is used by many kinds of organization, including banks, insurance companies, and Government.

If you require an interactive graphical user interface (GUI) tool, use our DiffPDF application instead.

"Your software is the best I've ever used for comparing PDFs.", —Customer comments on DiffPDF & diffpdfc

Try (free for 20 days) or Buy ($160 USD)

You can try diffpdfc free for up to 20 days using a trial license key. And you can buy a full license key for diffpdfc that has no time limit for $160 USD plus local sales tax (or local equivalent for many major currencies) using the secure MyCommerce platform. Tiered price discounts are applied if you buy at least 10 license keys—these are shown when you click Buy Now. (Purchasing departments: diffpdfc's Product ID is 51410-6.)

diffpdfc is available as a 32-bit application (-win32) that will work on modern 32-bit and 64-bit Windows, and as a 64-bit application (-amd64) that will work only on 64-bit Windows. (In both cases the computer must have an x86-compatible processor, i.e., almost all desktop and laptop computers.)

  1. On the computer you want to use, either:
  2. Double-click the installer and follow the on-screen instructions to install diffpdfc.
    (Alternatively, unpack the .zip file and add the path to diffpdfc.exe to your PATH.)
  3. diffpdfc can be used once a license key has been registered: run diffpdfc in a windows console with the ‑‑register option, and in the Register window that pops up, click either the Free Trial button or the Buy Now button to open a web browser window.

If your security settings prevent the buttons from working, use one of these links: Free Trial or Buy Now.

We recommend trying before buying, since license key purchases can't be refunded.

Note that each individual license key is tied to the particular computer it is acquired on. Each license key is valid for all minor and patch versions (e.g., if acquired for version 5, it is valid for all 5.x.y versions), and may be used with 32-bit or 64-bit editions.

If you buy more than ten licenses it is possible to remotely deploy diffpdfc without the need for users installing or registering themselves (experimental). Contact support@qtrac.eu for details. (Enterprise-wide licenses are available for those requiring 10,000+ licenses.)

The manual can be read by running the program with the -m or --manual command line option (providing a PDF viewer such as Acroread is installed). Or the manual can be opened directly: it is usually installed in "C:\Program Files (x86)\diffpdfc\doc\". You can also view the manual online at diffpdfc-5.pdf (~316 KB). The license is available at diffpdfc-license.pdf (31 KB) and from within the program.

Example Usages

Here is one example use of the program:

C:\Users\mark>diffpdfc -Hc -r report.pdf oldfile.pdf newfile.pdf
text different on 2 pages
wrote 'report.pdf'

The -Hc option tells diffpdfc to highlight changes (i.e., insertions, deletions, and replacements) rather than to use plain highlighting. (This option can be made the default by using a diffpdfc.dpc file as explained in the manual.) Here, the program has been asked to produce reports in .pdf format.

Here is another example use of the program:

C:\Users\mark>diffpdfc -r report.pdf -S summary.csv -q oldpdfdir newpdfdir

This run compares each PDF file in the oldpdfdir directory with a PDF file in the newpdfdir directory that has the same name (if there is one). For each pair of PDFs that differ, it produces the requested report or reports based on the given report names, e.g., report-0001.pdf, report-0002.pdf, etc., as well as a separate summary in summary.csv.

Example Visual Report (PNG format)

Here is an extract from the report-2.png image:

Image report-2_M1.pngImage report-2_M2.pngImage report-2_M3.png

By default, change bars are shown in red, and changes are highlighted with deletions in red, insertions in cyan, and replacements in magenta. In this example, the red and cyan highlighting indicates text that has moved (i.e., been deleted from one place and inserted in another). And the magenta highlighting indicates text that has been replaced in its original position. (Note that if plain rather than change highlighting is used—which is the default—all differences are shown in yellow.) All colors can be changed, as can the width of the change bar and many other things—all this is explained in the manual.

diffpdfc can also produce a PDF report which contains each pair of differing pages.

Command Line Interface

Here is diffpdfc's help output. (Top)

Note that the program supports many more options and customizations than are available via the command line.
These can be set by creating a plain text diffpdfc.dpc configuration file as explained in the manual.

C:\Users\mark>diffpdfc -h
usage: diffpdfc [-h] [-a | -c | -w] [-H {p,plain,c,changes}]
	        [-A ACCURACY] [-r FILE] [-q] [-V]
	        [--pages1 PAGES1] [--pages2 PAGES2]
		[--password1 PASSWORD1]
		[--password2 PASSWORD2] [-f SUFFIX]
		[--normalize-ligatures] [--no-report-pretty]
		[-o] [-p INT] [-C FILE.dpc] [--cores CORES]
                pdf1 pdf2

Compares two PDF files and reports any differences.

positional arguments:
  pdf1                  first PDF file or directory of PDF
			files to compare
  pdf2                  second PDF file or directory of PDF
			files to compare

optional arguments:
  -h, --help            show this help message and exit
  -a, --appearance      compare pages by their appearance
  -c, --chars           compare pages character by character
  -w, --words           compare pages word by word [default]
  -H {p,plain,c,changes}, --highlight {p,plain,c,changes}
                        character and word comparison
			difference highlighting
			[default: plain]
  -A ACCURACY, --accuracy ACCURACY
                        appearance comparison accuracy as a
			percentage [80-100; default: 100]
  -r FILE, --report FILE
                        where to report differences to.
			Supported formats: .csv .jsn .json
			.log .pdf .png .xml. Repeat this
			option to produce multiple reports
			at the same time
  -q, --quiet           only print error messages
  -V, --verbose         also print progress messages (use
			twice for extra detail)

extra optional arguments:
  --pages1 PAGES1       pages to compare from pdf1, e.g.,
			1-5,7,9,11-14 (page numbers start
			from 1) [default: all]
  --pages2 PAGES2       pages to compare from pdf2, e.g.,
			1-6,8-9,12-13, or 'same' to use the
			same page numbers as --pages1
			[default: all]
  --password1 PASSWORD1
                        password for pdf1
  --password2 PASSWORD2
                        password for pdf2

advanced optional arguments:
  -f SUFFIX, --format SUFFIX
			the file suffix for reports written
			to the --reportdir directory when
			comparing two directories of PDFs.
			Supported formats: .csv .jsn .json
			.log .pdf .png .xml. Repeat this
			option to produce multiple reports
			at the same time. Only effective
			when comparing directories and when
			--reportdir is specified.
			the directory to use for reports
			written when comparing two
			directories of PDFs. Only effective
			when comparing directories and when
			one or more --format suffixes is
  -s SCALE, --scale SCALE
			scale for visual reports as a
			percentage [25-400; default: 100]
			don't treat all kinds of hyphens as
			the same
			treat ligatures as if spelled in
			full, e.g., fi = fi, fl = fl, etc.
  --no-report-pretty    output text reports as compactly as
  -o, --use-old-renderer
			use old renderer for PNG and PDF
  -p INT, --pairs INT   how many pairs of pages to compare
			as a unit [1-5000; default: 1] This
			is experimental.
  -C FILE.dpc, --config FILE.dpc
			read configuration options from the
			given file (in addition to any
			diffpdfc.dpc files)
  --cores CORES         Use CORES cores [default: 1 or
			number detected]
  -S SUMMARY, --summary SUMMARY
			Summary filename [default: stdout]
			(only makes sense when comparing

alternative usage (one argument only) after which the
program exits:
  -m, --manual          show the manual (with full details
			of many more customization options)
			in a PDF viewer
  --register            register a trial or full license key
  --license             show the license
  -v, --version         show the version

Copyright © Qtrac Ltd 2013-16. All Rights Reserved.
This software uses the PySide library Copyright © 2013 Digia
Plc and/or its subsidiary(ies), and the Qt library Copyright
© 2015 The Qt Company Ltd. Use the --license option for how
to get the PySide and Qt licenses and source code.
(Computer ID: 93EE02B02A71FFEF1A1A4D344298E411.)
Full license key registered.

Old Versions

We always recommend using the most recent release. These are kept available for those who want to use specific previous versions. We normally only provide the highest patch release of any given minor release, so if you need a specific patch release let us know and we'll add it. (For details of the changes between versions, see the Changes page.)

Book Cover