Beschriftung von Vektordaten
Beschriftung von Punkten
Beispiel 1: Beschriftung eines Punktobjektes, ohne den Punkt zu zeichnen, in Abhängigkeit vom Maßstab, Schriftgröße kommt aus der Spalte size (Größe in Karteneinheiten), Schriftart Arial, kursiv.
point::Ortslage [mapscale6 < 50000] {
complex-graphics :
text {
text: [IsNull(txt)?"":txt];
text-color: black;
text-color-opacity: 1;
text-font-name: "Arial";
text-font-type: standard;
text-style: italic;
text-height: [MeterToPixel(size)+4];
min-text-height: 5;
max-text-height:20;
text-quality: antialiased;
};
}
Beispiel 2: Beschriftung mit Zahlenwerten, Umwandlung in Textformat ist vorher notwendig.
text: [ToString(Zahlwert)];
Beispiel 3: Das folgende Beispiel zeichnet Text auf einer nicht sichtbaren Linie, wenn die Kartenskalierung kleiner als 1:4000 ist. Im zweiten Bild wurde die Linie im Vergleich mit ausgegeben.
unordered::line::Textausrichtung [mapscale6 < 4000] {
line-offset: 1m;
text: [txt];
text-color: black;
text-font-name: "Arial";
text-height: 3m;
text-weight: 400;
text-quality: antialiased;
}
Beispiel 4: Beschriftung eines Flusses, wenn die Länge der Einzelgeometrien länger als 1000 Meter ist. Vorausetzung ist eine Spalte laenge und die Spalte Flussname.
ordered {
line {
line-color: blue;
line-width:3m;
text: [laenge >>> 1000 ? Flussname : " "];
text-color:blue;
text-font-name: "Arial";
text-height:8px;
text-start-location: center;
text-repeat-distance: 150px;
}
}
Beispiel 5: Beschriftung eines Flurstückes mit Nenner und Zähler. Wenn Nenner gleich = 0 dann wird nur der Zähler geschrieben, wenn Zähler = 0 nur der Nenner, sonst Zähler / Nenner.
unordered {
polygon {
fill-color: RGB(128, 128, 128);
fill-color-opacity: 0.33;
fill-pattern: solid;
border-line:
{
line-width: 1px;
line-color: black;
line-join: round;
line-start-cap: round;
line-end-cap: round;
};
text: [ IsNull(zaehler) ? (nenner) : IsNull(nenner) ? (zaehler) : (zaehler) // " / " // (nenner) ];
text-font-name: "Arial";
text-color: blue;
text-height: 10px;
}
}
Beispiel 6: Beschriftung eines Polygonrandes mit unterschiedlicher Textrichtung
/*Standard*/
text-direction: auto;
text-direction: with-line;
text-direction: against-line;
Beschriftung von Multigeometrien
Mittels der Eigenschaft text-each-geometry kann das Verhalten der Beschriftung von Multigeometrien beeinflusst werden. Standard ist die Beschriftung aller Flächen eines Multipolygons.
polygon {
fill-color: RGBA(128, 255, 0, 1);
fill-pattern: solid;
border-line:
{
line-width: 2px;
line-color: RGBA(255, 0, 0, 1);
line-join: round;
line-cap: round;
};
text: "cardo";
text-height: 12px;
text-font-name: "Arial";
text-each-geometry: false; //nur eine Fläche des Multipolygons wird beschriftet.
}
Formatierung von Dezimalzahlen
Dezimalzahlen können Sie wie folgt formatieren:
text: [Printf("Stadtteil: %s\n Prozent: %.2f %%", stadtteilname, prozent)];
mit %.2f wird die Dezimalzahl auf 2 Stellen nach dem Komma beschränkt.
Hinweis zu Schriftarten mit Sonderzeichen
Wird zur Textdarstellung bspw. ein " genutzt, so muss dieses maskiert werden.
text: """;
Zuletzt geändert: 26.01.2023 15:44:51 (erstmals erstellt 28.08.2018)