Skip to content
Back to top

# 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 ...

`[options]`

  Options are as follows:

  `-p` password

    Use the specified password if the file is encrypted.

  `-o` output

    The 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.

  `-r`

    Force repair before showing any objects.

  `-L`

    Show object labels (how to reach an object from the root)

`input.pdf`

  Input file name. Must be a PDF file.

`...`

  Specify what to show by using one of the following keywords, or 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 your `mutool show` query.

## Examples

Find the number of pages in a document:

    mutool show input.pdf trailer/Root/Pages/Count

Print the content stream data of the first page:

    mutool show -b input.pdf pages/1/Contents

Print the names of all the font resources on all the pages:

    mutool show input.pdf pages/*/Resources/Font/*/BaseFont

Show all JPEG compressed stream objects:

    mutool show input.pdf grep | grep '/Filter/DCTDecode'