| |
|
|
| CompileMarkSeparationSource wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Bruch-Darstellung realisieren
Lauffähig ab Profan-Version 5.0
PRFellow-Vorlage
Autor: Thomas Hölzer
Auf einfache Weise einen Bruch schreiben
Zähler und Nenner werden zentriert,
und der Bruchstrich paßt sich der Länge automatisch an.
Def w32_DrawText(5) !USER32,DrawTextA
Declare rect#,txt#
Proc ZeichneBruch
Parameters z$,n$,x%,y%
Declare strich$,laenge%,t$,cr$
Let cr$=Chr$(13);Chr$(10)
Let laenge%=Len(z$)
Case Gt(Len(n$),laenge%): Let laenge%=Len(n$)
Let laenge%=Mul(laenge%,2)
Let strich$=Translate$(Space$(laenge%),Chr$(32),Chr$(45))
Dim rect#,16
Long rect#,0=x%
Long rect#,4=y%
Long rect#,8=Add(x%,100) das dürfte reichen
Long rect#,12=Add(y%,100)
Let t$=z$;cr$;strich$;cr$;n$
Dim txt#,Add(Len(t$),1)
String txt#,0=t$
w32_DrawText(%hdc,txt#,Len(t$),rect#,$2001) mit Umbruch und zentriert
w32_DrawText(%hdc2,txt#,Len(t$),rect#,$2001)
Dispose rect#
Dispose txt#
EndProc
Beispiel: Ausgabe an Koordinaten 10,100
Cls
ZeichneBruch 12345,12345678, 10,100
While 1
WaitInput
Wend
|
|
|
| |
|
|