AddText [ATX, THO, TIH, TIL, TPA, TPC, TPO, TXT] |
Top Previous Next |
Anlegen eines Text-Elements. Mit AddText kann ein Text-Element universell angelegt werden. Es kann beliebig eingepaßt, platziert, ausgerichtet und/oder in seinen Einstellungen definiert werden. Der Text darf im Moment nur eine Länge von 2048 Zeichen besitzen, ansonsten unterliegt er keiner Einschränkung. Der Text kann sowohl als Parameter angegeben werden, als auch aus der Texttabelle oder dem Textpuffer entnommen werden. Es ist weiterhin möglich, den Text sowohl als Standard-Text als auch als Attribut-Text abzulegen. Ein Teil des Dialoges wird über die Funktionsparameter gesteuert. Des weiteren können alle notwendigen Einstellungen auch über diese vordefiniert werden (alle Parameter sind nicht case-sensitiv). Voraussetzung Die Datenbank muß eröffnet sein Ein Objekt muß eröffnet sein. Parameter \r oder \n im Text bewirken einen Zeilenumbruch. Das \r ist für die Eingabe in der Kommandozeile und das \n für die Eingabe in Batch-Dateien (Siehe Beispiel „Zeilenumbruch“).
DKY/ Es wird der Zeichenschlüssel des Textelementes festgelegt. Die Angabe des Parameters ist optional und erfolgt in der Form DKY/n, wobei n aus den natürlichen Zahlen einschließlich der Null gewählt werden kann. Alternativ ist es möglich, den Parameter in der Form DKY/ask anzugeben, um einen Dialog für den Parameter zu erzwingen. Fehlt der Parameter, so wird entweder der vorinitialisierte Wert (siehe auch die Funktion InitializeParameter/DKY) angenommen, falls dieser definiert ist oder Null ansonsten. DKA/ Es wird der Flächenschlüssel des Textelementes festgelegt. Die Angabe des Parameters ist optional und erfolgt in der Form DKA/n, wobei n aus den natürlichen Zahlen einschließlich der Null gewählt werden kann. Alternativ ist es möglich, den Parameter in der Form DKA/ask anzugeben, um einen Dialog für den Parameter zu erzwingen. Fehlt der Parameter, so wird entweder der vorinitialisierte Wert (siehe auch die Funktion InitializeParameter/DKA) angenommen, falls dieser definiert ist oder Null ansonsten. TXM/ Es wird die Textart des Textelementes festgelegt. Diese können in der Textarttabelle eingesehen werden. Im Moment sind nur die neun Textarten 0, ..., 8 definiert. Die Angabe des Parameters ist optional und erfolgt in der Form TXM/n, wobei n aus den natürlichen Zahlen einschließlich der Null gewählt werden kann (Beachte, welche Textarten definiert sind!). Alternativ ist es möglich, den Parameter in der Form TXM/ask anzugeben, um einen Dialog für den Parameter zu erzwingen. Fehlt der Parameter, so wird entweder der vorinitialisierte Wert (siehe auch die Funktion InitializeParameter /TXM) angenommen, falls dieser definiert ist oder Null ansonsten. POS/ Es wird die Ausrichtung des Textelementes bezüglich des Bezugspunkts festgelegt. Die Angabe des Parameters ist optional und erfolgt in der Form POS/s, wobei s einem der folgenden Buchstaben entsprechen muß, die nicht case-sensitiv angegebe werden können:
Fehlt der Parameter, so kann dieser entweder bei der Definition des Bezugspunkts festgelegt werden oder er wird standardmäßig als linksbündig angenommen. TXI/ Es wird die Texthöhe des Textelementes festgelegt (Die Angabe erfolgt in 1/100 mm). Die Angabe des Parameters ist optional und erfolgt in der Form TXI/n, wobei n aus den natürlichen Zahlen einschließlich der Null gewählt werden kann. Alternativ ist es möglich, den Parameter in der Form TXI/ask anzugeben, um einen Dialog für den Parameter zu erzwingen. Fehlt der Parameter, so wird er zu Null angenommen. TEX/ Es wird die Referenznummer zur Übernahme eines Textes aus der Texttabelle oder aus dem Textpuffer (-1 als Referenznummer) festgelegt. Die Angabe des Parameters ist optional und erfolgt in der Form TEX/n, wobei n aus den natürlichen Zahlen einschließlich der -1 gewählt werden kann. Dabei bedeutet die -1 eine Übernahme des Textes aus dem Textpuffer. Fehlt der Parameter oder entspricht er keiner gültigen Referenznummer, so wird er ignoriert. Wurde schon in der Kommandozeile ein Text übergeben (siehe auch den freien Parameter TEXT), so findet ein eigens dafür vorgesehener Dialog statt, welcher Text benutzt werden soll. ALPHA/ Es wird der Winkel in der x-y-Ebene festgelegt, um den das Textelement im Bezugspunkt relativ zur positiven x-Achse gedreht wird. Die Angabe des Parameters ist optional und erfolgt in der Form ALPHA/x, wobei x aus den reellen Zahlen gewählt werden kann. Durch Voranstellen eines Buchstaben kann das Winkelmaß bestimmt werden, dabei sind folgende Werte zulässig: R Winkel wird in Radiant eingegeben D Winkel wird in Grad (DEGREE) eingegeben G Winkel wird in Neugrad (GON) eingegeben Ohne Buchstaben erfolgt die Angabe im in Moskito eingestellten Winkelmaß (Variable WGR ). Hat der Schalter ALPHA keinen (zulässigen) Wert wird die Funktion beendet. BETA/ Es wird der Winkel in der x-z-Ebene festgelegt, um den das Textelement im Bezugspunkt relativ zur x-Achse gedreht wird. Die Angabe des Parameters ist optional und erfolgt in der Form BETA/x, wobei x aus den reellen Zahlen gewählt werden kann. Die Angabe erfolgt in Grad (0° – 360°). Fehlt der Parameter, so wird standardmäßig von einem Winkel von 0° ausgegangen. Das Gradzeichen muß dabei nicht mitangegeben werden. Z/ Es wird die z-Koordinate für den Bezugspunkt des Textelementes festgelegt. Die Angabe des Parameters ist optional und erfolgt in der Form Z/x, wobei x aus den reellen Zahlen gewählt werden kann. Fehlt die Angabe, so ist sie standardmäßig mit Null vorbelegt. ABS/ Es wird der Abstand des Textes zu seiner definierten Basislinie festgelegt. Die Angabe des Parameters ist optional und erfolgt in der Form ABS/x, wobei x aus den reellen Zahlen gewählt werden kann. Alternativ ist es möglich, den Parameter in der Form ABS/ask anzugeben, um einen Dialog für den Parameter zu erzwingen. Fehlt der Parameter, so ist er standardmäßig mit Null vorbelegt. TXL/ Es wird die Standlinienlänge, d.h. die Gesamtlänge des Textelementes festgelegt. Die Angabe des Parameters ist optional und erfolgt in der Form TXL/x, wobei x aus den reellen Zahlen gewählt werden kann. Fehlt der Parameter oder wird er durch den aktiven Parameter /FITIN überlagert, so wird er ignoriert. BUFFER/ Es wird festgelegt, in welcher Form der definierte Text oder das Textelement angelegt werden. Die Angabe des Parameters ist optional und erfolgt in der Form BUFFER/n, wobei n einem der folgenden Werte entsprechen muß: -1 : Text wird nur im Textpuffer abgelegt; 0 : Textelement wird in die Datenbank übernommen und zusätzlich der Text im Textpuffer abgelegt; +1 : Textelement wird nur in die Datenbank übernommen. Fehlt der Parameter, so kann wird standardmäßig nur eine Übernahme des Textelementes in die Datenbank vorgenommen. /EXPAND Es wird veranlasst, dass das durch den Parameter <Text> definierte Textelement als Attributtext gesetzt wird. Die Angabe des Parameters ist optional und erfolgt in der Form /EXPAND. /ATX Es wird ein Flag gesetzt, das bewirkt, dass der Parameter <Text> die Form eines Attributtextes erhält, d.h. es werden die %% um den Textstring gesetzt, die dafür sorgen, dass der Inhalt des Attributes und des gleichnamigen Attributtextes übereinstimmen. /FITIN Es wird veranlasst, dass der definierte Text zwischen zwei Punkten eingepasst wird. Ist zusätzlich der Parameter IDENTIFY aktiv, so findet eine Einpassung auf ein beliebiges String-Element statt. Die Einpassung erfolgt über eine Streckung des Textes (Vergrößerung der Zeichenzwischenräume), falls der Parameter HIGH aktiv ist. Die Einpassung erfolgt über eine Größenanpassung (Anpassung der Texthöhe), falls der Parameter HIGH inaktiv ist. Die Angabe des Parameters ist optional und erfolgt in der Form /FITIN. /HORIZONT Es wird veranlasst, dass der vordefinierte Horizont als Basislinie dient, entlang derer der Text parallel platziert wird. Ist kein Horizont definiert, so wird die Horizontrichtung standardmäßig als Richtung der x-Achse im globalen Koordinatensystems angenommen. Die Angabe des Parameters ist optional und erfolgt in der Form /HORIZONT. REFPOINT Als Position des Textes wird der aktuell geöffnete Punkt verwendet. OFFSETX/nnn OFFSETY/nnn Abstand des Textes vom Referenzpunkt. Diese Parameter werden nur ausgewertet, wenn /REFPOINT ebenfalls angegeben wurde. Der Offset wird in 1/100 mm angegeben. OFFSETALPHA /1POINT Es wird veranlasst, dass nur ein Richtungspunkt abgefragt wird und der Bezugspunkt gleichzeitig als erster Richtungspunkt gilt. Dies führt zu einer Vereinfachung des Dialoges. Die Angabe des Parameters ist optional und erfolgt in der Form /1POINT. SWAPTEXT/ Es wird veranlasst, dass eine ganze Swaptextgruppe angelegt wird. Die Texte gruppieren sich dabei unter oder über dem zentralen Text, der sich am Textbezugspunkt festmacht. Die Angabe des Parameters ist optional und erfolgt in der Form SWAPTEXT/n, wobei n aus dem Bereich der ganzen Zahlen gewählt werden kann. Dabei gilt: n > 0 : Swaptexte werden übereinander angeordnet, n < 0 : Swaptexte werden untereinander angeordnet. SWAPABS/ Es wird der Abstand der Zeilen innerhalb der Swaptexte bei der Angabe einer Swaptextgruppe festgelegt. Die Angabe erfolgt in 1/100 mm. Der Parameter wird nur bei der Eingabe einer Swaptextgruppe berücksichtigt. Die Angabe des Parameters ist optional und erfolgt in der Form SWAPABS/n, wobei n aus dem Bereich der natürlichen Zahlen gewählt werden kann. <TEXT> Jede Zeichenfolge, die keinem der vorangehenden Parameter entspricht wird automatisch als Text interpretiert. Soll die Zeichenfolge ein oder mehrere Leerzeichen enthalten, muß sie entsprechend durch Hochkommata eingeschlossen werden. Beginnt die Zeichenfolge mit dem Zeichen &, so werden die folgenden Zeichen als Angabe für eine Swaptextgruppe interpretiert (entsprechend dem Parameter SWAPTEXT/n) /RUBBERBAND zeigt beim Positionieren den Umriss an. /H Es wird eine Hilfe für die Funktion AddText gegeben. Der Hilfstext enthält eine kurze Beschreibung der Funktion sowie eine Aufrufanleitung. Die Angabe des Parameters ist optional und erfolgt in der Form -H oder /H (äquivalente Eingaben). Rückgabewert
Dialog Eingabe des Zeichenschlüssels: (n) (Falls der Parameter DKY/ask aktiv ist) Eingabe des Flächenschlüssels: (n) (Falls der Parameter DKA/ask aktiv ist) Eingabe der Textart: (n) (Falls der Parameter TXM/ask aktiv ist) Eingabe der Texthöhe: (n) (Falls die Parameter /FITIN und BUFFER/-1 nicht aktiviert wurden und die Texthöhe nicht schon über den Parameter TXI/n vordefiniert wurde) Eingabe des Textabstands zur Basislinie: (x) (Falls der Parameter ABS/ask aktiv ist) Wurde noch kein Text vordefiniert, so findet einer der beiden folgenden Dialoge statt: Eingabe eines Textes: (s) (Falls einer der Parameter /FITIN, /IDENTIFY, BUFFER/-1 oder BUFFER/0 aktiv ist) Eingabe eines Textes oder eines Textbezugspunktes: (Falls die unter a) angegebenen Bedingungen nicht zutreffen) <t,CLS/t,CON> (s, &x)
In Abhängigkeit der Wahl der Steuerparameter /IDENTIFY, /FITIN und /HORIZONT findet einer der folgenden unterschiedlichen Dialoge statt: a) Texteinpassung bestimmen: (Falls der Parameter /FITIN aktiv ist) Ersten Einpaßpunkt bestimmen: <P,CLS/P,CON> Zweiten Einpaßpunkt bestimmen: <P,CLS/P,CON> b) Text entlang eines String-Elements plazieren: (Falls der Parameter /IDENTIFY aktiv ist) String-Element identifizieren: <P,L,CON> Soll das String-Element anschließend gelöscht werden (J/N) c) Es ist weder /FITIN noch /IDENTIFY aktiv. Textbezugspunkt digitalisieren: <t,CLS/t,CON> (Falls dieser noch nicht unter Dialogpunkt 6.b) bestimmt wurde) Textrichtung bestimmen: (Falls der Parameter /HORIZONT nicht aktiv ist) Ersten Richtungspunkt digitalisieren: <P,CLS/t,CON>
Zweiten Richtungspunkt digitalisieren: <t,CLS/t,CON> (Falls /1POINT nicht aktiv ist und der erste Richtungspunkt angegeben wurde)
Der im Dialog verwendete Platzhalter t kann durch die Parameter P, L, C oder R ersetzt werden, die – falls nicht anders angegeben – eine selektive Identifizierung ermöglichen. Der Dialog kann jederzeit über die Eingabe von #CON verlassen werden, falls nichts anderes erwähnt wurde. Es findet dann keine Textplatzierung statt. Wird eine unerlaubte Eingabe gemacht so wird eine Fehlermeldung veranlasst und der Dialog wird entweder wiederholt oder ganz verlassen. Beispiel Kommandozeileneingabe: AddText DKY/4 DKA/0 TXM/ask POS/r TXI/500 TEX/-1 ALPHA/90 BETA/0 Z/0 ABS/1 TXL/0 BUFFER/1 /1POINT AddText DKY/3 DKA/1 „Dies ist ein Text“ BUFFER/-1 /FITIN AddText TXI/ask /HORIZONT /EXPAND AddText /FITIN /IDENTIFY AddText SWAPTEXT/-8 SWAPABS/250 AddText /H AddText Attributtext anlegen AddText /EXPAND ... Einfachen linksbündigen Text definieren AddText Texthöhe eingeben: (n) 500 Text eingeben oder Bezugspunkt bestimmen: <t,CLS/t,CON> (s) Hello Bezugspunkt bestimmen: <t,CLS/t,CON> #P 10 15 1. Richtungspunkt bestimmen: <t,CLS/t,CON> #P -10 0 2. Richtungspunkt bestimmen: <t,CLS/t,CON> #P 10 0 Einfachen rechtsbündigen Text definieren mit Vordefinitionen AddText DKY/ask DKA/ask TXM/ask Zeichenschlüssel eingeben: (n) 3 Schraffurschlüssel eingeben: (n) 0 Textart eingeben: (n) 4 Texthöhe eingeben: (n) 500 Text eingeben oder Bezugspunkt bestimmen: <t,CLS/t,CON> (s) Hello Bezugspunkt bestimmen: <t,CLS/t,CON> #R 10 15 1. Richtungspunkt bestimmen: <t,CLS/t,CON> #P -10 0 2. Richtungspunkt bestimmen: <t,CLS/t,CON> #P 10 0 Einfachen zentrierten Text mit Abstand zur Bezugslinie definieren AddText ABS/ask Textabstand eingeben: (x) 5.5 Texthöhe eingeben: (n) 500 Text eingeben oder Bezugspunkt bestimmen: <t,CLS/t,CON> (s) Hello Bezugspunkt bestimmen: <t,CLS/t,CON> #C 10 15 1. Richtungspunkt bestimmen: <t,CLS/t,CON> #P -10 0 2. Richtungspunkt bestimmen: <t,CLS/t,CON> #P 10 0 Text aus dem Textpuffer anlegen AddText TEX/-1 Texthöhe eingeben: (n) 500 Bezugspunkt bestimmen: <t,CLS/t,CON> #P 10 15 1. Richtungspunkt bestimmen: <t,CLS/t,CON> #P -10 0 2. Richtungspunkt bestimmen: <t,CLS/t,CON> #P 10 0 Text entlang dem Horizont plazieren AddText /HORIZONT ... AddText ... Texthöhe eingeben: (n) 500 Text eingeben oder Bezugspunkt bestimmen: <t,CLS/t,CON> (s) Hello Bezugspunkt bestimmen: <t,CLS/t,CON> #P 10 15 1. Richtungspunkt bestimmen: <t,CLS/t,CON> #CON Text orthogonal zur Basislinie plazieren AddText ... Texthöhe eingeben: (n) 500 Text eingeben oder Bezugspunkt bestimmen: <t,CLS/t,CON> (s) Hello Bezugspunkt bestimmen: <t,CLS/t,CON> #P 10 15 1. Richtungspunkt bestimmen: <t,CLS/t,CON> #P -10 0 2. Richtungspunkt bestimmen: <t,CLS/t,CON> #R 10 0 Text mit einem freien Winkel zur Basislinie plazieren AddText ... Texthöhe eingeben: (n) 500 Text eingeben oder Bezugspunkt bestimmen: <t,CLS/t,CON> (s) Hello Bezugspunkt bestimmen: <t,CLS/t,CON> #P 10 15 1. Richtungspunkt bestimmen: <t,CLS/t,CON> #P -10 0 2. Richtungspunkt bestimmen: <t,CLS/t,CON> #C 10 0 Winkel eingeben: (a) 45 Text entlang eines String-Elements plazieren AddText /IDENTIFY String-Element identifizieren: <t,CLS/t,CON> #P 50 -34 Texthöhe eingeben: (n) 500 Text eingeben: (s) Hello Soll das String-Element gelöscht werden? (J/N) N Text zwischen zwei Punkten einpassen (Texthöhe wird angepasst) AddText /FITIN Text eingeben: (s) Hello 1. Einpaßpunkt bestimmen: <P,CLS/P,CON> #P 0 0 2. Einpaßpunkt bestimmen: <P,CLS/P,CON> #P 10 10 Text zwischen zwei Punkten mit fester Texthöhe einpassen AddText /FITIN TXI/ask Texthöhe eingeben: (n) 500 Text eingeben: (s) Hello 1. Einpaßpunkt bestimmen: <P,CLS/P,CON> #P 0 0 2. Einpaßpunkt bestimmen: <P,CLS/P,CON> #P 10 10 Text auf ein String-Element einpassen AddText /FITIN /IDENTIFY Texthöhe wird angepaßt AddText /FITIN /IDENTIFY TXI/ask Texthöhe bleibt fest (Die Dialoge zum Einpassen eines Elements und zum Plazieren entlang eines Elements werden hier nur verknüpft) Swaptextgruppe anlegen AddText SWAPTEXT/-5 SWAPABS/500 (Fünf Swaptexte untereinander im Abstand der halben Texthöhe) Texthöhe eingeben: (n) 1000 Bezugspunkt bestimmen: <t,CLS/t,CON> #P 10 15 Richtungspunkt bestimmen: <t,CLS/t,CON> #P -10 0 Richtungspunkt bestimmen: <t,CLS/t,CON> #P 10 0 AddText SWAPTEXT/5 (Fünf Swaptexte übereinander ohne einen Zwischenraum) Texthöhe eingeben: (n) 1000 Bezugspunkt bestimmen: <t,CLS/t,CON> #P 10 15 Richtungspunkt bestimmen: <t,CLS/t,CON> #P -10 0 Richtungspunkt bestimmen: <t,CLS/t,CON> #P 10 0 AddText (Zwei Swaptexte übereinander ohne einen Zwischenraum) Texthöhe eingeben: (n) 1000 Text eingeben oder Bezugspunkt bestimmen: <t,CLS/t,CON> (s) &+2 Bezugspunkt bestimmen: <t,CLS/t,CON> #P 10 15 Richtungspunkt bestimmen: <t,CLS/t,CON> #P -10 0 Richtungspunkt bestimmen: <t,CLS/t,CON> #P 10 0
Beispiel Zeilenumbruch durch \r oder \n
In Batch-Dateien muß für den Zeilenumbruch \n und in der Kommandozeile \r verwendete werden !
AddText /HORIZONT Texthöhe eingeben: 800 Text-String eingeben: SUPER \r GEIL Bezugspunkt digitalisieren: <P,L,C,R,CLS/x,CON> #P -10 0
Bemerkung Performance: Ist der Parameter /IDENTIFY oder /FITIN aktiv, dann bleibt der Parameter /HORIZONT ohne Wirkung. Ist im Dialogpunkt 7b) zusätzlich der Parameter TXI sinnvoll (d.h. echt positiv) belegt, so findet eine automatische Längenstreckung des Textes statt, ansonsten erfolgt eine automatische Anpassung der Texthöhe. Alle für Texte möglichen Einstellungsparameter sind beliebig über Kommandozeileneingabe vordefinierbar. Aufgrund der Kompatibilität zu den alten GRADIS-Funktionen (siehe auch die Entsprech-ungen), sind einige Funktionalitäten redundant zu erreichen (Beispiel: Plazierung eines Textes parallel zum Horizont kann sowohl über die Angabe des Funktionsparameters /HORIZONT, als auch über die Angabe von #CON bei der Eingabe des ersten Richtungspunkts – siehe auch Dialogpunkt 7.c) – erzwungen werden. Die Text unterliegen zur Zeit einer Einschränkung von maximal 2048 Zeichen. Entsprechungen:
Erläuterung zu Swaptexten: Wird im Dialog kein Text definiert, so wird automatisch ein Swaptext generiert – ein Platzhalter für einen Text, der zu einem späteren Zeitpunkt durch die Funktion SwapText/SWT belegt werden kann. Ein Swaptext besitzt die Textkennung „SWT“ gefolgt von einer fortlaufenden Nummer (SWT1, SWT2, SWT3, ...), welche automatisch vergeben wird. Es ist zu beachten, das die Nummern zur Kennzeichnung der Swaptexte bei jeder Sitzung neu initialisiert werden. Es ist daher ratsam Swaptexte innerhalb einer Sitzung durch den richtigen Text zu ersetzen. Swaptexte sind nicht möglich, wenn einer der beiden Parameter /IDENTIFY oder /FITIN aktiv ist, da mit Swaptexten keine Einpassung vorgenommen werden kann.
Erläuterung zu Swaptextgruppen: Wird der Funktionsparameter SWAPTEXT/n mit n ungleich Null gewählt oder ist der angegebene Textstring von der Form &n mit n ungleich Null, so wird eine Swaptextgruppe angelegt. D.h. es werden n Swaptexte übereinander (n > 0) bzw. untereinander (n < 0) angelegt. Über den Parameter SWAPABS/n kann ein einzuhaltender Abstand zwichen den Swaptexten definiert werden. Fehlt der Parameter, so folgen die Swaptexte in Texthöhenabstand ohne Freiraum direkt über- oder unterinander. Die einzelnen Swaptexte sind nach dem Anlegen unabhängig voneinander und es gilt für sie das oben erwähnte für Swaptexte. Siehe auch ExplodeMultilineText
|