Überblick

Mit der jadice document platform ist es möglich, PageSegments nach eigenen Wünschen zu gestalten, und diese anschließend in Dokumente einzubinden. Mit dem ContentsCreatorPageSegment ist es es möglich, Formen die auf java.awt.Shape basieren sowie Textelemente auf dem so erzeugten Seitensegment zu platzieren.

Überblick

Die Erzeugung eines ContentsCreatorPageSegments erfolgt mit Hilfe eines ContentsCreatorPageSegmentBuilders. Dieser implementiert ein Builder-Pattern, so dass Elemente über die add-Methoden des Builders nacheinander eingefügt werden können. Die Darstellung der eingefügten Elemente wird mit ContentsCreatorControls kontrolliert, die für jedes eingefügte Element definiert werden können. Mit dem Schließen des Builders wird ein neues PageSegment erzeugt. Eine Änderung des Builders oder der enthaltenen Elemente ist anschließend nicht mehr möglich.

Hinzufügen von Elementen und ContentsCreatorControls

Elemente, die im PageSegment enthalten sein sollen, werden über die add-Methoden des Builders hinzugefügt. Hierbei werden als Parameter erwartet:

  • das Element das eingefügt werden soll.

  • ein ContentsCreatorControls-Objekt, das die Eigenschaften definiert, mit denen das Element dargestellt werden soll.

Objekte der Klasse ContentsCreatorControls sind Wrapper-Objekte, die Eigenschaften, mit denen ein Element im ContentsCreatorPageSegment dargestellt wird, bündeln. In den Controls ist höchstens je ein Objekt einer Implementierung der ContentsCreatorSettings enthalten. Um die in einem Controls-Objekt enthaltenen Settings zu manipulieren, können diese aus dem Controls-Objekt abgerufen und anschließend über die im zurückgegebenen Objekt verfügbaren Methoden manipuliert werden. Ist dabei bereits ein Objekt der angefragten Klasse enthalten, wird dieses zurückgegeben. Ist noch kein Objekt der angefragten Klasse enthalten, wird ein neues erzeugt, in den Controls registriert und dieses neue Objekt zurückgeben. Ebenso ist es möglich, bereits beinhaltete Settings komplett zu entfernen.[46]

Folgende ContentsCreatorSettings-Implementierungen zur Manipulation der einzufügenden Elemente stehen zur Verfügung:

ContentsCreatorColorSettings

Die ContentsCreatorColorSettings enthalten die stroking- und nonStroking-Farben für das hinzuzufügende Element. Diese Settings sind für alle Elemente relevant.[47]

ContentsCreatorTransformationSettings

ContentsCreatorTransformationSettings enthalten die Transformation, die auf das einzufügende Element angewendet wird. Nach dem Erzeugen ist als Transformation die Einheitstransformation festgelegt.

ContentsCreatorTextSettings

In den ContentsCreatorTextSettings werden Schriftart und Schriftgröße des hinzuzufügenden Texts gesetzt. Diese Einstellungen sind nur für Texte relevant.

ContentsCreatorDrawModeSettings

Die ContentsCreatorDrawModeSettings definieren, welche Teile einer Form gezeichnet werden (Draw Mode) und welcher java.awt.Stroke für das Zeichnen des Rahmens verwendet werden soll. Folgende Optionen sind verfügbar:

DRAW

Zeichnet nur den Umriss des Objekts.

FILL

Zeichnet nur die Flächen des Objekts.

DRAW_AND_FILL

Zeichnet Umriss und Fläche des Objekts.

Die Settings-Klassen arbeiten, sofern nicht anders angegeben, mit JadiceDocumentUnits. Eine JadiceDocumentUnit entspricht 1/7200 Zoll[48].



[46] Dieses Pattern wird in „Processing Controls und Settings“ näher erläutert.

[47] Die Stroking-Farbe eines Objekts ist die Farbe, in der der Pfad dargestellt wird, der ein Objekt beschreibt, beispielsweise der Umriss eines Rechtecks. Die Non-Stroking-Farbe ist die Farbe, in der die zu füllenden Flächen eines Elements dargestellt werden sollen, beispielsweise die innere Fläche eines Rechtecks.

[48] Weitere Informationen zu Einheiten und deren Umrechnung finden Sie in Unit

[jadice document platform Version 5.5.12.1: Dokumentation für Entwickler. Veröffentlicht: 2021-08-17]