mutool show#
The show
command will print the specified objects and streams to stdout
. Streams are decoded and non-printable characters are represented with a period by default.
mutool show [options] input.pdf ( trailer | xref | pages | grep | outline | js | form | <path> ) *
Note
Command line parameters within square brackets []
are optional.
[options]
Options are as follows:
-p
passwordUse the specified password if the file is encrypted.
-o
outputThe output file name instead of using
stdout
. Should be a plain text file format.-e
Leave stream contents in their original form.
-b
Print only stream contents, as raw binary data.
-g
Print only object, one line per object, suitable for grep.
input.pdf
Input file name. Must be a PDF file.
( trailer | xref | pages | grep | outline | js | form | <path> ) *
Specify what to show by using one of the following keywords, or specify a path to an object:
trailer
Print the trailer dictionary.
xref
Print the cross reference table.
pages
List the object numbers for every page.
grep
Print all the objects in the file in a compact one-line format suitable for piping to grep.
outline
Print the outline (also known as “table of contents” or “bookmarks”).
js
Print document level JavaScript.
form
Print form objects.
<path>
A path starts with either an object number, a property in the trailer dictionary, or the keyword “trailer” or “pages”. Separate elements with a period ‘.’ or slash ‘/’. Select a page object by using pages/N where N is the page number. The first page is number 1.
*
You can use
*
as an element to iterate over all array indices or dictionary properties in an object. Thus you can have multiple keywords with for yourmutool show
query.
Examples:
Find the number of pages in a document:
mutool show $FILE trailer/Root/Pages/CountPrint the raw content stream of the first page:
mutool show -b $FILE pages/1/ContentsPrint the raw content stream of the first page & second page & the PDF outline (demonstrates use of the
*
element):mutool show -b $FILE pages/1/Contents pages/2/Contents outlineShow all JPEG compressed stream objects:
mutool show $FILE grep | grep '/Filter/DCTDecode'
This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of that license. Refer to licensing information at artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information.