Zurück |  | Weiter

## 9.8. PDF-Seite ausschnittweise in PNG umwandeln

Die Gründe, um Tests mit gerenderten Ausschnitten einer PDF-Seite durchzuführen, sind in Kapitel 3.16: „Layout - gerenderte Seitenausschnitte“ beschrieben. Um den Seitenausschnitt „richtig“ zu ermitteln, stellt PDFUnit das kleine Hilfsprogramm `RenderPdfClippingAreaToImage` zur Verfügung. Mit ihm wird der durch die Aufrufparameter bestimmte Ausschnitt als PNG-Datei exportiert und kann danach „per Augenschein“ auf seine Richtigkeit überprüft werden. Wenn der Ausschnitt stimmt, übernehmen Sie die Parameter in Ihren Test.

### Aufruf

    ::
    :: Render a part of a PDF page into an image file
    ::

    @echo off
    setlocal
    set CLASSPATH=./lib/pdfunit-2015.10/*;%CLASSPATH%
    set CLASSPATH=./lib/jpedal/*;%CLASSPATH%
    set CLASSPATH=./lib/bouncycastle-jdk15on-150/*;%CLASSPATH%
    set CLASSPATH=./lib/aspectj-1.8.0/*;%CLASSPATH%

    set TOOL=com.pdfunit.tools.RenderPdfClippingAreaToImage
    set OUT_DIR=./tmp
    set PAGENUMBER=1
    set IN_FILE=documentForTextClipping.pdf
    set PASSWD=

    ::  Format unit can only be 'mm' or 'points'
    set FORMATUNIT=points

    ::  Put these values into your test code:
    set UPPERLEFTX=50
    set UPPERLEFTY=130
    set WIDTH=170
    set HEIGHT=25

    java  %TOOL%  %IN_FILE%  %PAGENUMBER%  %OUT_DIR%
          %FORMATUNIT%  %UPPERLEFTX%  %UPPERLEFTY%  %WIDTH%  %HEIGHT%  %PASSWD%
    endlocal

| Zeilenumbruch nur für diese Dokumentation

Die 4 Werte, die den Ausschnitt beschreiben, müssen entweder Millimeter `mm` oder Points `points` sein. Sie werden einen Taschenrechner bemühen müssen, um an die richtigen Werte zu kommen.

### Eingabe

Die Eingabedatei `documentForTextClipping.pdf` enthält im oberen Bereich den Text: „ `Content on first page.` “

### Ausgabe

Die erzeugte Bilddatei muss auf ihre Richtigkeit überprüft werden.

Damit Sie bei mehreren Seitenausschnitten nicht den Überblick verlieren, enthält der Dateiname die Ausschnittparameter. PDFUnit und das Hilfsprogramm `RenderPdfClippingAreaToImage` nutzen den gleichen Algorithmus. Deshalb können Sie die Parameter aus dem Skript direkt in Ihren Test übernehmen oder auch nachträglich aus dem Dateinamen ableiten:

    #
    # Parameters from filename:
    #

    _rendered_documentForTextClipping_page-1_area-50-130-170-25.out.png
                                                   |  |   |   |
                                                   |  |   |   +- height
                                                   |  |   +- width
                                                   |  +- upperLeftY
                                                   +- upperLeftX

PDFUnit nutzt für dieses Hilfsprogramm intern Funktionen aus dem Projekt „jPedal“ (http://www.idrsolutions.com/). Nochmals Danke an die Entwickler.

Zurück | Nach oben | Weiter
9.7. PDF-Dokument seitenweise in PNG umwandeln | Zum Anfang | 9.9. Schrifteigenschaften nach XML extrahieren