pdfcpu

Logo

A PDF processor written in Go.

View the Project on GitHub pdfcpu/pdfcpu


Changelog

Validate

Any PDF file you would like to process with pdfcpu needs to pass validation.

This command validates inFile against:


Validation can also check for broken links.


Have a look at some examples.

Usage

pdfcpu validate [-m(ode) strict|relaxed] [-l(inks)] inFile


Flags

name description required values default
m(ode) validation mode no strict, relaxed relaxed
l(inks) check links no    


Common Flags

name description values
v(erbose) turn on logging  
vv verbose logging  
q(uiet) quiet mode  
-o(ffline) disable http traffic  
c(onf) config dir $path, disable
opw owner password  
upw user password  
u(nit) display unit po(ints),in(ches),cm,mm


Arguments

name description required
inFile PDF input file yes


Mode

Strict

This mode validates against the PDF specification covering all PDF versions up to 2.0.

Relaxed

This is the default mode for validation.
It behaves like strict but does not complain about common seen violations of the specification by PDF writers.


Examples

An example using strict validation:

pdfcpu validate -mode strict test.pdf
validating(mode=strict) test.pdf ...
validation ok


An example using default validation:

pdfcpu validate test.pdf
validating(mode=relaxed) test.pdf ...
validation ok


Check for broken links:

pdfcpu val -l PDF32000_2008.pdf
validating(mode=relaxed) PDF32000_2008.pdf ...
validating URIs..
...........................
Page 8: http://www.aiim.org/pdfrefdocs status=404
Page 10: http://adobe.com/go/pdf_ref_bibliography status=404
Page 10: http://www.adobe.com/go/pdf_ref_bibliography status=404
Page 11: http://www.aiim.org/pdfnotes status=404
Page 753: http://developer.apple.com/fonts/TTRefMan/ status=404
Page 754: http://www.agfamonotype.com/printer/pan1.asp status=404
Page 755: http://www.rsasecurity.com/rsalabs/node.asp?id=2125 status=404
validation error: broken links detected