Hier erfolgt eine genaue Bescheibung des Styles "textStyle" und alle dessen Besonderheiten.

Aufbau eines TextStyles

Der Attributblock "textStyle" ist Optional. Hier kann alles Textspezifische über die im Beispiel angegebenen Attribute gesteuert werden.

<textStyle>
	<content>
		<layerValue>layerValue</layerValue>
	</content>
    <maxZoom>0</maxZoom>
  	<minZoom>0</minZoom>
	<align>
		<layerValue>left</layerValue>
	</align>
	<baseline>
		<layerValue>bottom</layerValue>
	</baseline>
	<color>
		<layerValue>
			<rgbColor>
				<red>0</red>
				<green>0</green>
				<blue>0</blue>
			</rgbColor>
		</layerValue>
	</color>
	<fontFamily>
		<layerValue>Arial</layerValue>
	</fontFamily>
	<fontStyle>
		<valueMapping>
			<attribute>C37</attribute>
			<value>
				<inputValue>Linie 1</inputValue>
				<outputValue>italic</outputValue>
			</value>
			<value>
				<inputValue>Linie 2</inputValue>
				<outputValue>oblique</outputValue>
			</value>
			<defaultValue>normal</defaultValue>
		</valueMapping>
	</fontStyle>
	<fontWeight>
		<featureValue>
			<attributeName>Attribut</attributeName>
			<defaultValue>bold</defaultValue>
		</featureValue>
	</fontWeight>
	<halo>
		<color>
			<layerValue>
				<rgbColor>
					<red>0</red>
					<green>0</green>
					<blue>0</blue>
				</rgbColor>
			</layerValue>
		</color>
		<width>
			<layerValue>0.0</layerValue>
		</width>
	</halo>
	<height>
		<layerValue>0.0</layerValue>
	</height>
	<unit>m</unit>
	<offsetX>
		<layerValue>0</layerValue>
	</offsetX>
	<offsetY>
		<layerValue>0</layerValue>
	</offsetY>
	<rotation>
		<layerValue>0.0</layerValue>
	</rotation>
	<leadingLineAttribute>leadingLine</leadingLineAttribute>
 </textStyle>

Überblick

Jedes der oben gezeigten und unten aufgelisteten Stilattribute kann entweder als konstanter Wert für den gesamten Layer oder featurespezifisch (von einem Attribut abgeleitet) definiert oder durch ein Mapping von einem Attribut abgeleitet werden. Details dazu findet man auf dieser Seite.

Icon

Achtung: Werden die Stilattribute von Attributen aus der Text- oder Haupttabelle abgeleitet, beachten Sie bitte unbedingt die Übersicht der zur Verfügung stehenden Attribute unten!

AttributBeschreibungDatentypOptional
rotateWithView

Angabe, ob die Texte bei Kartendrehung mitgedreht werden.

Boolean (true | false)ja (Standard false)
contentAngabe des Symbolnamens.Textnein
maxZoomAngabe ab welcher Zoomstufe der Text zu sehen ist.Integerja
minZoomAngabe bis zu welcher Zoomstufe der Text zu sehen ist.Integerja
alignAngabe der Textausrichtung.

TextAlignType
(left | center | right)

ja (Standard center)
baselineAngabe der Textausrichtung. Nähere Information finden Sie im weiteren Verlauf des Kapitels.bottom | center | top | hanging | ideographic | baselineja
colorAngabe der Textfarbe.ColorIndexTypeja
font

Angabe der graphischen Textausprägung. Beispiel: Bold 2px Calibri,sans-serif.

Wird ab Version 1.0.14 nicht mehr ausgewertet!!!!

Textja

fontFamily

Angabe des Fonts, z.B. Arial mit dem Texte ausgegeben werden sollenTextJa
fontStyleAngabe der Ausprägung des Fonts.normal | oblique | italicJa
fontWeightAngabe zur Stärke des Fonts.normal | boldJa
halo

Angaben für die Textumrandung.

 ja
halo.color

Angabe der Textumrandungsfarbe.

ColorIndexTypeja
halo.width

Angabe der Textumrandungsbreite in Pixel

Doubleja
heightAngabe der TexthöheDoubleja
unit

Angabe der Einheit in der Texthöhe dargestellt wird (m := Meter, px := Pixel).

Standard ist die Angabe von Metern.

Bei einer Angabe in Pixel bleibt ein Text unabhängig von der Zoomstufe immer gleich groß, d.h. er skaliert nicht mit

m | pxja (Standard m)
offsetX

Die globale Verschiebung des Textes bzgl. zum Einfügepunkt in x-Richtung.

Integerja
offsetY

Die globale Verschiebung des Textes bzgl. zum Einfügepunkt in y-Richtung.

Integerja
rotationAngabe Textdrehung.Doubleja
leadingLineAttributeAttribut, welches die Führungsliniengeometrie angibt. Wenn das Attribut leer oder nicht angegeben ist, wird keine Führungslinie gezeichnet. Die Führungslinie wird derzeit als Haarlinie in der Farbe des Texts dargestelltTextja

Baseline

Da die Angabe von Baseline nicht immer verständlich sind, soll folgende Grafik behilflich sein:

Anbei noch ein Vergleich der Werte.

Wert in XMLWert in CAD / GISX 2.xDXF KodeOpen LayersBemerkung
bottom  bottom 
ideographicbottom1ideographicDer Unterschied zwischen bottom und ideographic hängt stark vom verwendeten Text und Font ab.
baselinebaseline0alphabetic 
centermiddle2middle 
hangingtop3hangingHierbei handelt es sich um keinen Fehler in der Zuordnung der Werte. In CAD Systemen wird "top" tatsächlich als "hanging" interpretiert.
top  top 

Attributnamen

Bei der Textverarbeitung von GISX 2 Daten gibt es momentan eine Besonderheit: Je nach Konfiguration des Themas (siehe Themenoptionen) werden die Texte und Attributblöcke entweder zu Einzeltexten mit einem eigenen Set von Attributen aufgelöst oder dies passiert nicht, wobei dann die normalen Attribute der Text- und Haupttabelle gemäß der Attributdokumentation zur Verfügung stehen.

Das Standardverhalten ist das Umwandeln von Texten und Attributblöcke entweder zu Einzeltexten. Diese besitzen momentan ausschließlich folgende vorverarbeiteten Attribute:

AttributnameDatentyp internBedeutung
contentTextVerarbeiteter Textinhalt
GISX2: Wurde in der Texttabelle als CVALUE "@(S)E0101.C37" angegeben, so wird hier bereits der Inhalt der Spalte C37 für das Objekt zurückgegeben.
fontTextFontname (z.B. Arial)
GISX2: Hier findet man den Fontnamen der aus dem Textstil abgeleitet wurde.
fontWeightnormal | bold

Textstärke

GISX2: Hier findet man die Textstärke die aus dem Textstil abgeleitet wurde.

fontStylenormal | italic

Textausprägung

GISX2: Hier findet man die Textausprägung die aus dem Textstil abgeleitet wurde.

heightDoubleDie Texthöhe in m.
GISX2: Hier findet man entweder die Angabe aus der DB-Spalte HN oder oder im Fall von Attributblöcken
colorColorDie Textfarbe
GISX2: Hier findet man entweder die Angabe aus der DB-Spalte NSTYLE oder im Fall von Attributblöcken - wenn explizit definiert - die Farbe der Einzeltexte im Attributblock wieder.
rotationDoubleDer endgültige Drehwinkel des Einzeltexts.
GISX2: Bei Zusatztexten ist das die Angabe aus der DB-Spalte NROTATION. Im Fall von Einzeltexten eines Attributblocks wird dazu der Drehwinkel des Einzeltexts im Attributblock addiert.
geometryPointDie Punktgeometrie des Texteinfügepunkts für den Einzeltext.
leadingLineLineStringDie Liniengeometrie einer eventuellen Führungslinie

Für Entwickler: Der Einzeltext und seine spezifischen Attribute sind in der Klasse TextFeature definiert.
Setzt man in der Themendefinition hingegen das Flag IGNORE_TEXTRESOLVING, so kann man Zusatztexte und Symbolen mit Stilen versehen, die sich auf die Attribute der Text- und/oder Haupttabelle direkt beziehen. Diese können der Attributdokumentation für das jeweilige Thema entnommen werden.

Attachments:

baselines.png (image/png)