An Adobe Acrobat DC plug-in to generate PDF bookmarks (catalog) based on given catalog information.
Author: liuzikai
Date: 02/18/2018
Revised based on Adobe Acrobat DC SDK project BasicPlugin.
Develop and Test Environment:
- macOS 10.13.3
- Adobe Acrobat Pro DC Version 2018.009.20050
- Xcode Version 9.2
There are some JS scripts on the Internet that have similar function. However, these scripts can only make go-to-page actions with JS code, which is not supported by some PDF readers such as macOS Preview. But using plug-in, native jumping actions can be added to bookmarks.
For macOS, Adobe Acrobat DC
Download BookmarkGenerator.acroplugin.
Copy BookmarkGenerator.acroplugin to /Users/(username)/Library/Application Support/Adobe/Acrobat/DC/Plug-ins
.
Format:
Use .
to show levels in index.
Title can contain spaces.
Index Title
will be used as the name of bookmark.
For example:
The plug-in will use the first index level as "basic level", for example:
Please make sure there is no excess new lines at the end of the txt file.
If you have catalog pages in the PDF file, you can copy it out (maybe export to other form first) and process the text with some technology such as regular expressions.
Since the given page numbers may be different from the actual page number for PDF file, the plug-in need to confirm the first page of main body. For example,
Here is the the first page of main body. However, for PDF file, it is actually page 23.
This plug-in is developed on macOS and for Acrobat DC. It seems that it can't be directly applied to Win or other version of Acrobat. If you are interested in it, it would be great if you can help developing other versions. :)
Some tips:
- Adobe Acrobat DC SDK for Mac is developed based on old Xcode and macOS, so some revisions are needed.
- For Acrobat DC, it seems that plug-ins won't be valid if directly put in the application package.
- The file MacCopyToPlugins.sh is a script provided by SDK that runs after building. It can perform work such as copying the plug-in to the corresponding folder. In current project, please change the
ACROBAT_PLUGINS_FOLDER
in Environment.xcconfig to your own path.