Scroll to navigation

pdfoutline(1) fntsample pdfoutline(1)

NAME

pdfoutline - add outlines (aka bookmarks) to PDF files

SYNOPSIS

pdfoutline input.pdf outlines.txt output.pdf

DESCRIPTION

pdfoutline reads input file given as first argument, adds outlines from text file given as second argument, and saves result to file with name given as third argument.

File with outlines information should consist of lines in the following format:

<level> <page> Outline text

<level> and <page> should be integers. Each field should be separated by exactly one space symbol. All values for <level> should be greater or equal than that of the first line. Page numeration starts with 1.

Outlines file can contain comments that start with # in first column. Comments and empty lines are ignored. The text is expected to be in UTF-8 encoding.

OPTIONS

pdfoutline accepts no options.

EXAMPLES

Here is example of outlines data file:

0 1 Document title
1 1 Chapter 1
2 1 Chapter 1.1
2 2 Chapter 1.2
1 3 Chapter 2

Using this file will result in outlines like the following:

Document title
+-Chapter 1
| +-Chapter 1.1
| +-Chapter 1.2
+-Chapter 2

BUGS

Due to a bug in Perl library PDF::API2 v2.039 and earlier, some Unicode characters are handled incorrectly and cause outline string corruptions. For example, everything after the CJK character U+4E0A (上) will get corrupted in the PDF output because its UTF-16 encoding contains byte 0x0A, which happens to be an ASCII newline character.

For user convenience, this pdfoutline version includes a workaround that should allow flawless operation down to PDF::API2 v2.034. Users of even earlier versions should upgrade PDF::API2.

AUTHOR

pdfoutline author is Ievgenii Meshcheriakov <eugen@debian.org>
pdfoutline is part of fntsample and can be downoaded from <https://github.com/eugmes/fntsample>.

2023-05-05 5.4