9.11. Sprungziele nach XML extrahieren

Named Destinations, die Sprungziele innerhalb von PDF-Dokumenten, können schlecht getestet werden, da man sie ja nicht sieht. Mit dem Hilfsprogramm ExtractNamedDestinations können Sie sie aber extrahieren und die sichtbar gemachten Namen anschließend in Ihren Tests verwenden. Das Kapitel 3.20: „Lesezeichen/Bookmarks und Sprungziele“ beschreibt diese Tests ausführlich.

Und so sieht das Extraktionsskript aus:

Aufruf

::
:: Extract information about named destinations in a PDF document into an XML file
::

@echo off
setlocal
set CLASSPATH=./lib/aspectj-1.8.7/*;%CLASSPATH%
set CLASSPATH=./lib/bouncycastle-jdk15on-153/*;%CLASSPATH%
set CLASSPATH=./lib/commons-logging-1.2/*;%CLASSPATH%
set CLASSPATH=./lib/pdfbox-2.0.0/*;%CLASSPATH%
set CLASSPATH=./lib/pdfunit-2016.05/*;%CLASSPATH%

set TOOL=com.pdfunit.tools.ExtractNamedDestinations
set OUT_DIR=./tmp
set IN_FILE=bookmarksWithPdfOutline.pdf
set PASSWD=

java  %TOOL%  %IN_FILE%  %OUT_DIR%  %PASSWD%
endlocal

Eingabe

Die im Beispiel verwendete Datei bookmarksWithPdfOutline.pdf enthält verschiedene Sprungziele.

Ausgabe

Es entsteht die Datei _named-destinations_bookmarksWithPdfOutline.out.xml mit folgendem Inhalt:

<?xml version="1.0" encoding="UTF-8"?>
<destinations>
  <destination name="destination1"            page="1" />
  <destination name="destination2.1"          page="2" />
  <destination name="destination2.2"          page="2" />
  <destination name="destination2_no_blank"   page="2" />
  <destination name="destination3 with blank" page="3" />
</destinations>