Mit dem Text-Label-Manager werden zuvor gesetzte Automatische Beschriftungen in Textobjekte überführt und in einem separaten Layer gespeichert.
Für jede kartierbare Relation (Layer) kann ein spezieller Text-Label-Layer definiert werden. Text-Label können für Flächen/Bereiche, Linien/Polylinien oder für Punkte/Symbole erstellt werden.
Im Unterschied zur Automatischen Beschriftung, handelt es sich bei der Text-Label-Funktion um echte Textobjekte. Die Textobjekte behalten beim Vergrößern/Verkleinern oder Drucken immer Ihre tatsächliche Größe (sie zoomen mit) - vergleichbar mit den Hausnummern, Straßennamen oder Flurstückbezeichnungen der ALKIS-Daten. In dem separaten Text-Label-Layer wird zu jedem Datensatz der Basis-Relation ein Textobjekt erzeugt, dass der Beschriftungsanweisung (gesteuert über die Layerkontrolle) des Basis-Layers entspricht.
Die Funktionsweise des Text-Label-Managers ähnelt der Standardfunktion Automatische Beschriftung, bietet jedoch zahlreiche Vorteile:
•Da die Textobjekte ebenfalls dynamisch mit der Basis-Relation verbunden sind, wirken sich Änderungen in der Datenbank auch auf die gesetzten Beschriftungstexte aus. •Verbesserte Druck- und Bildschirmausgabe, da die Beschriftungen als Textobjekte vorliegen (Textgröße, Positionierung, Maßstabsabhängkeit). •Exportfähigkeit in andere CAD/GIS-Formate, da die Beschriftungen als Textobjekte vorliegen. •Die Text-Label-Beschriftungen können über die Layerkontrolle wahlweise ein-/ausgeblendet werden, da die Beschriftungen als Textobjekte in einem separaten Layer vorliegen. •Die Text-Label-Beschriftungen können anderen Anwendern zur Verfügung gestellt werden, da die Beschriftungen als Textobjekte in einem separaten Layer vorliegen. •Text-Label-Layer sind reguläre kartierbare Relationen (Layer) und können im GeoAS Management idealerweise auch der jeweiligen Datengruppe der Basis-Relation zugeordnet. (Es besteht aber auch die Möglichkeit, Text-Label-Layer einer eigenen/anderen Datengruppe zuzuordnen. Dies hat keinen negativen Einfluss auf die Funktionalität.)
Der Basis-Layer, für den die Text-Label-Funktion aktiviert werden soll, muss eine kartierbare Relation (Layer) sein.
(WMS-Layer, Raster-Layer, Kombi-Layer werden nicht unterstützt.)
Die Tabelle des Basis-Layers muss über eine Spalte verfügen, in der für jeden Datensatz eine eindeutige ID hinterlegt ist (Primärschlüssel-Spalte).
Im Kartenfenster muss die Automatische Beschriftung aktiviert sein, damit diese Beschriftungsinformationen in die sogenannten Text-Label umgewandelt werden können.
|
Im GeoAS Management kann jede kartierbare Relation (Layer) mit der Text-Label-Funktionalität versehen werden.
Folgende Einstellungen müssen (einmalig) vorgenommen werden:
1) Im GeoAS Management ist für den betreffenden Basis-Layer in der Registerkarte Metadaten folgende Einstellung auszuwählen/einzutragen:
•Schlüssel: TextLabel •Wert: True (vergrößern)
2) Im GeoAS Management ist für den betreffenden Basis-Layer in der Registerkarte Allgemein die entsprechende Primärschlüssel-Spalte auszuwählen/einzutragen:
(Die Verknüpfung des Basis-Layers mit dem Text-Label-Layer erfolgt automatisiert über diesen Primärschlüssel.)
•Primärschlüssel: Wählen Sie die zu verwendende Primärschlüsselspalte (vergrößern)
3) Der Text-Label-Layer wird beim ersten Aufruf des Text-Label Managers automatisch erzeugt und geöffnet und mit der Bezeichnung NamederBasisRelationLabel in demselben Verzeichnis des Basis-Layers gespeichert. Der Text-Label-Layer sollte anschließend idealerweise in die Datengruppe des Basis-Layers integriert werden. Dies kann entweder über das GeoAS Management erfolgen oder über den Relationsabgleich, sofern der Benutzer Ändern-Rechte an der betreffenden Datengruppe hat. (Es besteht aber auch die Möglichkeit, Text-Label-Layer einer eigenen/anderen Datengruppe zuzuordnen. Dies hat keinen negativen Einfluss auf die Funktionalität.)
|
Beispiel: Grünflächen
(vergrößern)
|
Mit welchen Beschriftungsinhalten die Text-Label erstellt werden sollen und wie diese optische ausgestaltet sein sollen (Größe, Schriftart, Farbe, ...), wird über die Layerkontrolle mit den Standardfunktionalitäten der Automatischen Beschriftung über die Registerkarten Beschriftungsanzeige und Beschriftungsregeln eingestellt.
(Ausführliche Informationen entnehmen Sie bitte dem Kapitel Beschriftungen in der Dokumentation GeoAS Grundlagen.)
Definieren Sie über die Beschriftungsdialoge Beschritungsanzeige bzw. Beschritungsregeln die gewünschte Spalte zur Beschriftung (oder einen Spalten-Ausdruck) und legen Sie die Einstellungen zur Ausgestaltung, Position und Ausrichtung fest, die initial beim Setzen der Text-Label verwendet werden sollen.
(vergrößern)
Aktivieren Sie anschließend in der Layerkontrolle für den entsprechenden Layer die Automatische Beschriftung.
Im Kartenfenster wird nun die Standard-Automatische Beschriftung abgebildet.
Die Text-Label-Funktionalität übernimmt die Beschriftungen nach der Methode WYSIWYG (What You See Is What You Get) in den Text-Label-Layer.
Bevor Sie die Text-Label-Funktion initial ausführen, sollten Sie daher insbesondere darauf achten, dass die aktuelle Größe der Beschriftungen im Verhältnis zu den zu beschriftenden Kartenobjekten Ihren Vorstellungen entspricht.
(vergrößern)
Hinweis
|
•Es werden alle Objekte des Basis-Layers beschriftet - auch wenn diese aktuell nicht im Kartenfenster sichtbar sind. Es muss lediglich sichergestellt sein, dass der Kartenausschnitt so vergrößert ist, dass alle Objekte beschriftet sind (und beispielsweise nicht durch eine Einstellung des Zoombereichs ausgeblendet sind). •Die Text-Label-Funktionalität übernimmt die Beschriftungen nach der Methode WYSIWYG (What You See Is What You Get) in den Text-Label-Layer. •Achten Sie darauf, dass insbesondere die aktuelle Größe der Beschriftungen Ihren Vorstellungen entspricht - im Verhältnis zu den zu beschriftenden Kartenobjekten. •Um gegebenenfalls die Ausgestaltung der Beschriftungen (Beschriftungsfarbe, Beschriftungsgröße, Beschriftungsspalte/Beschriftungsausdruck, ...) zu ändern, wechseln Sie über die Layerkontrolle wieder in die beiden Dialoge zu den Voreinstellungen der Beschriftungen. •Verschieben Sie die bitte Beschriftungen erst, nachdem Sie den Text-Label-Layer erzeugt und die Beschriftungen als Text-Label vorliegen. Beschriftungen, die als Automatische Beschriftung verschoben wurden (sogenannte "benutzerdefinierte Bschriftungen"), werden beim initialen Erzeugen des Text-Label-Layers wieder an die ursprüngliche Position zurückgesetzt!
A) "korrekte" Beschriftungseinstellung
|
B) Beschriftungstexte "zu groß"
|
C) "fehlende" Beschriftungstexte
(weil beispielsweise die Funktion "Überlappungen vermeiden" eingestellt ist)
|
(vergrößern)
|
(vergrößern)
|
(vergrößern)
|
|
|
Die Einstellungen und Darstellung der Automatischen Beschriftung kann nun mit dem Text-Label Manager in "echte" Textobjekte überführt werden.
Aktivieren Sie dazu die Funktion Manager > Text-Label > Alle Objekte.
Falls für mehrere Layer die Text-Label-Funktionalität konfiguriert wurde, erscheint ein Dialog zur Auswahl des betreffenden Basis-Layers.
Wählen Sie den gewünschten Basis-Layer aus und bestätigen Sie mit OK.
|
Es werden nun die Textobjekte in einem separaten Label-Layer erzeugt (und eine Protokoll-Datei geöffnet).
Der Text-Label-Layer wird automatisch erstellt und in das aktuelle Kartenfenster integriert.
|
In der Layerkontrolle erscheint der Layer GrünflächenLabel.
(Nach Erzeugung der Text-Label wird für den Layer Grünflächen die Automatische Beschriftung deaktiviert (da nun der Text-Label-Layer die Beschriftungen enthält.)
|
(vergrößern)
|
|
|
Die Tabellenstruktur des Text-Label-Layers ist so konzipiert, dass über die vorab definierte Primärschlüssel-Spalte eine dynamische Verlinkung zum Basis-Layer gegeben ist. Somit können inhaltliche Änderungen, die gegebenenfalls in der Datenbank des Basis-Layers vorgenommen wurden, in den Text-Label-Layer übertragen werden.
|
|
Der Text-Label-Layer sollte anschließend idealerweise in die Datengruppe des Basis-Layers integriert werden. (Es besteht aber auch die Möglichkeit, Text-Label-Layer einer eigenen/anderen Datengruppe zuzuordnen. Dies hat keinen negativen Einfluss auf die Funktionalität.)
Dies kann entweder über das GeoAS Management (Dokumentation: GeoAS Administration) erfolgen oder über den Relationsabgleich, sofern der Benutzer Ändern-Rechte an der betreffenden Datengruppe hat.
|
Sobald Text-Label-Objekte für einen Layer erzeugt wurden, kann die Text-Label-Funktion Selektierte Objekte Verwendung finden.
Diese Funktion kann entweder über das Menü Manager > Text-Label > Selektierte Objekte oder über die Schatfläche Selektierte Objekte in der Schaltflächenleiste Zeichnen aufgerufen werden.
Diese Funktion kommt zum Einsatz, um vorhandene Text-Label zu aktualisieren, sofern:
•Text-Label für neu erzeugte Objekte erstellt werden sollen •Text-Label erneuert werden sollen für sich Tabelleninhalte in den ausgewählten Beschriftungsspalten geändert haben Selektieren Sie die entsprechenden Objekte der Basisrelation im Kartenfenster und rufen Sie dann die Text-Label-Funktion Selektierte Objekte auf.
(Im zuvor skizzierten Beispiel müssen Bereichs-/Flächenobjekte des Basis-Layers Grünflächen selektiert werden - und nicht die Textobjekte des korrespondierenden Text-Label-Layers.)
Die Text-Label-Beschriftungen werden dann automatisch für die zuvor selektierten Objekte platziert.
|
Sobald Text-Label-Objekte für einen Layer erzeugt wurden, können die Text-Label auch individuell platziert/verschoben werden. (Dazu ist eine GeoAS Voll-Lizenz erforderlich.)
Stellen Sie den entsprechenden Text-Label-Layer in der Layerkontrolle auf bearbeitbar.
Selektieren Sie das zu verschiebende Textobjekt im Kartenfenster und halten Sie dabei die linke Maustaste gedrückt.
Verschieben Sie nun das Textobjekt an die gewünschte Position.
(vergrößern)
Speichern Sie die Änderungen im Text-Label-Layer anschließend mit der Funktion Relation speichern.
|
Optional können verschobene Text-Label auch mit einer Linie oder einem Pfeil versehen werden, um die Zuordnung der Beschriftung zum Kartenobjekt besser darzustellen.
(vergrößern)
Variante A: Linie/Pfeil für alle zu verschiebenden Text-Label (als Standardeinstellung)
Bevor Sie den Text-Label-Layer erstellen, öffnen Sie über die Layerkontrolle für den entsprechenden Layer per Doppelklick den Dialog Layereigenschaften.
Aktivieren Sie in der Registerkarte Beschritungsanzeige bei Beschriftungslinien die Option Pfeil und bestätigen Sie mit OK.
(vergrößern)
Erzeugen Sie nun initial den Text-Label-Layer (wie oben beschrieben).
Stellen Sie den entsprechenden Text-Label-Layer in der Layerkontrolle auf bearbeitbar.
Selektieren Sie das zu verschiebende Text-Label im Kartenfenster und halten Sie dabei die linke Maustaste gedrückt.
Verschieben Sie nun die Beschriftung an die gewünschte Position.
(vergrößern)
Alle verschobenen Text-Label werden nun automatisch mit einem Pfeil versehen.
(vergrößern)
Speichern Sie die Änderungen im Text-Label-Layer anschließend mit der Funktion Relation speichern.
Variante B: Linie/Pfeil für einzelne zu verschiebende Text-Label bzw. (bei Bedarf)
Stellen Sie den entsprechenden Text-Label-Layer in der Layerkontrolle auf bearbeitbar.
Doppelklicken Sie im Kartenfenster auf die zu verschiebende Beschriftung (bevor Sie ein Text-Label verschieben).
Aktivieren Sie die Option Pfeillinie im Dialog Textobjekt und bestätigen Sie mit OK.
Selektieren Sie das zu verschiebende Text-Label im Kartenfenster und halten Sie dabei die linke Maustaste gedrückt.
Verschieben Sie nun die Beschriftung an die gewünschte Position.
(vergrößern)
Das verschobene Text-Label wird nun mit einem Pfeil versehen.
(vergrößern)
Speichern Sie die Änderungen im Text-Label-Layer anschließend mit der Funktion Relation speichern.
|
Worin besteht der Unterschied zwischen den Durchführungsvarianten Selektierte Objekte und Alle Objekte?
Je nach Wahl der Durchführungsvarianten unterscheiden sich die Anzahl der zu verwaltenden Textobjekte und die Datenkonsistenzprüfungen.
In beiden Fällen wird zuerst eine Verschneidung des Basis-Layers mit dem Text-Label-Layer über den Primärschlüssel durchgeführt. Alle so gefundenen Textobjekte werden inhaltlich mit den Werten der Basis-Layers aktualisiert. Position, Ausrichtung und Ausgestaltung der Textobjekte werden beibehalten.
Für alle Basisobjekte die noch kein Text-Label haben (z.B. neue Objekte) wird automatisch ein neues Text-Label erzeugt und gemäß den Beschriftungs-Einstellungen platziert.
Wurde die Funktion Alle Objekte gewählt, werden zusätzlich alle Text-Label entfernt, zu denen es kein Basisobjekt mehr gibt.
Ändern von Textobjekten
Position, Ausrichtung und Gestaltung der Textobjekte können für jedes Text-Label einzeln direkt im Kartenfenster geändert werden. Die Änderungen können anschließend gespeichert werden und bleiben somit erhalten (auch wenn sich die Beschriftungsspalte ändert).
Falls das Beschriftungsformat oder die Ausrichtung für alle Text-Label geändert werden soll, muss der vorhandenen Text-Label-Layer gelöscht und anschließend wieder neue Text-Label erzeugt werden.
Eine Änderung bezüglich der Beschriftungsspalte (oder Beschriftungsausdrucks) kann mit Hilfe der Text-Label-Funktion realisiert werden.
Die Text-Label werden bei Änderungen der Werte auf Karteikarten direkt aktualisiert.
Zusätzlich kann die Text-Label Funktion auch aus einem Makro heraus aufgerufen werden.
Hinweis
|
•Bei der initialen Ausführung der Text-Label-Funktion verwenden Sie bitte die Funktion Alle Objekte.
Sofern die Funktion Selektierte Objekte aufgerufen wird, erscheint folgender Hinweis:
•Um Datenfehler zu vermeiden, achten Sie bitte darauf, dass die Primärschlüssel der Datensätze der Basis-Relation auch wirklich eindeutig sind.
(Dies kann beispielsweise mit der Funktion Doppelte Werte finden überprüft werden.)
Sofern Primärschlüssel nicht eindeutig vorliegen, erscheint folgender Hinweis:
•Der Text-Label-Layer und die dessen Relationsstruktur wird automatisch erzeugt und darf nicht modifiziert werden. Sie besteht neben der Primärschlüssel-Spalte zusätzlich aus den Spalten Label, LabelRemove und Angle. •Die Spaltennamen LabelNeu, LabelAdd, LabelText, LabelID und L_Angle werden vom Text-Label Manager benutzt und dürfen im Basis-Layer nicht verwendet werden. •Die Information zur (relativen) Größe der Text-Label-Beschriftungen wird als Meta-Information "\LabelZoom" = "XX" in der *.tab-Datei des Text-Label-Layers gespeichert. Dadurch ist sichergestellt, dass beim Aktualisieren oder Platzieren neuer Text-Label alle Beschriftungstexte dieselbe Größe haben. Bevor die Text-Label-Funktion initial ausgeführt wird, kann der aktuell im Kartenfenster verwendete Zoombereich über die Schaltfläche Ansicht ändern angezeigt werden.
•Je nach verwendeter Grafikkarte kann es vorkommen, dass neu erzeugte Label erst nach Fenster neuzeichnen oder Vergrößern/Verkleinern sichtbar werden. •Aus Performance-Gründen wird der Label-Layer beim Labeln aus allen Kartenfenstern entfernt. Im aktiven Kartenfenster wird er anschließend wieder hinzugefügt. •Ist bereits ein Label-Layer erzeugt, dieser aber nicht geöffnet, kann er geöffnet oder ersetzt werden.
•Relationen, deren Name auf „Label" endet, können nicht mit der Text-Label-Funktion verarbeitet werden. Sie stehen bei der Auswahl <Alle Objekte> nicht zur Verfügung. •Bei mehrzeiligen Beschriftungsausdrücken verwenden Sie bitte als Zeilenumbruch den Ausdruck Spalte1 + Chr$(10) + Spalte2 (und NICHT Chr$(13)). •Die Text-Label-Funktionen können im Auskunftsmodus nicht ausgeführt werden. |
|