abbrechen
Suchergebnisse werden angezeigt für 
Stattdessen suchen nach 
Meintest du: 
abbrechen
Suchergebnisse werden angezeigt für 
Stattdessen suchen nach 
Meintest du: 

Wir schätzen Ihren Input!
Bitte nehmen Sie an der Umfrage zu Archicad 28 Startbildschirm und Lerninhalte/Schnell-Tutorials teil

Programmierung
Alles über Programmierung in GDL und Python

Stringtext

Anonymous
Nicht anwendbar
:crazy: ?
5 ANTWORTEN 5
zzyzx
Newcomer
was meinst Du genau, was brauchst Du
Anonymous
Nicht anwendbar
Ich meine damit zB. folgendes Beispiel: </font><blockquote><font size="1" face="Verdana, Helvetica, sans-serif">Zitat:</font><hr /><font size="2" face="Verdana, Helvetica, sans-serif">aatxt=obererRandabstand
bbtxt=obererRandabstand
Textstil=Textstil
WoTextPunkt = 1
wie=1
Stringtext= "MAIER & HUBER???"
text2 Heftrand, Heftrand, "MAIER &HUBER"Wozu dient das aatxt, bbzw. btxt und was bewirkt die ominöse Stringtexteingabe :verwirrt: ???
zzyzx
Newcomer
wo hast Du das denn gefunden?
**
also aus dem Zitat folgere ich, dass ein Text, und zwar "MAIER &HUBER" an der Position x=heftrand und y=heftrand positioniert wird.
weiter oben im Skript müsste noch der Textstil definiert und gesetzt werden. Das andere scheinen alles Variablen zu sein, die vielleicht an anderer Stelle noch irgendwie gebraucht werden (oder auch nicht) und hier einfach mal definiert werden. Variablen können ja fast beliebige Namen haben, warum also nicht auch mal Stringtext
***
wenn nötig schick mir das Teil zu, dann schaumermalrein
Anonymous
Nicht anwendbar
Das ist ein Bestandteil aus hmooslechners automatischen Planrahmen - unter uns gesagt ein irres Ding :yeah: .

Planrahmen und - stempel

Solche und ähnliche scripts gibt es noch viel mehr.

Werde mich wohl mal direkt an hmooslechner wenden.
Hmooslechner
Moderator
Hallo Stringtextuser!

Dieses Programmteil muß mit den richtigen Parametern aufgerufen werden. Diese werden jeweils vor dem Aufruf festgelegt.
Dann erfolgt eigentlich der Unterprogramm-Aufruf.
Dieses macht mit einem "Dummy-Textstil" die Berechnungen der Text-Ausmße und berechnet die größte mögliche Höhe oder Breite des Textes, daß er immer in die definierte Box paßt.

Der vollständige Code:

</font><blockquote><font size="1" face="Verdana, Helvetica, sans-serif">Code:</font><hr /><pre style="font-size:x-small; font-family: monospace;">
!!!!Funktion Text in Boundingbox - Heimo Mooslechner 7/2002
pen Stiftlinie
line2 0, 0, 0, b !!!!!Bounding-Box
line2 0, 0, a, 0
line2 a, b, 0, b
line2 a, 0, a, b

hotspot2 0,0
hotspot2 a, b
m=1/1000*GLOB_SCALE !!!!Zeichnungsmaßstabs-Abfrage



aatxt=a !!nötige Parameter-Übergabe-Definition
bbtxt=b
Textstil=Textstil
WoTextPunktt=WoTextPunkt
Stringtext=Stringtext

gosub 1234: !!holt sich von 1000: den passenden Textsatil

pen stift
text2 a/2, b/2, Stringtext




end !!!!!!!!!!!!!!!!!PROGRAMM ENDE!!!!!!!!!!!!!!!!


1234:
!!!!!Funktion: Testeschriftgröße A+B und gib mir einen Stil retour, der in die Box paßt
define Style "Dummy" Textstil, aatxt*m, WoTextPunkt, 0 !!! Dummystil definieren
style Dummy
TextbreiteA=STW(Stringtext) !!Textbreite mit Dummystil ermitteln
VerhaeltnisA = aatxt/TextbreiteA !!Verhältnis von Dummy-Textbreite zu aa-Länge
define Style "DummyA" Textstil, aatxt*VerhaeltnisA, WoTextPunkt, 0 !!!Dummystil für aa-Breite definieren
style DummyA
woswasi=REQUEST ("Height_of_style", "DummyA", Texthoch) !!Texthöhe für diesen neuen aa-Stil ermitteln
Texthoch=Texthoch*m !!Zeichnungsmaßstab für Texthoch ausschalten
if texthoch < bbtxt then !!Falls Texthoch < b dann Breiten-Stil verwenden
else !!sonst: Höhenstil verwenden
hochverhalt=texthoch/bbtxt
define Style "DummyB" Textstil, aatxt*VerhaeltnisA/hochverhalt, WoTextPunkt, 0 !!!Dummystil für aa-Breite definieren
style DummyB
endif
return !!Gib mir den richtigen Stil für die Box retour



Somit ist es mit Nutzung dieser Funktion ganz unmöglich, aus einem Kasterl rauszuschreiben. Bei zu vielen Buchstaben wird einfach die Schrift entsprechend kleiner!

Außerdem umgeht die Funktion die Schriftgrößenveränderung bei Archicad-Zeichnungs-Maßstabsänderungen

Vuielleicht hat mal wer Lust, eine Mehrzeilige Funktion zu erschaffen?

mfG. Heimo

[ 10-12-2002, 08:46: Beitrag editiert von: Heimo ]
AC5.5-AC27EduAut, PC-Win10, MacbookAirM1, MacbookM1Max, Win-I7+Nvidia

Keine Antwort gefunden?

Andere Beiträge
im Board ansehen

Zurück zum Board

Neueste Lösungen durchsuchen

Akzeptierte Lösungen zeigen

Eine neue Diskussion starten!

Neues Thema erstellen