| |
|
|
|
Source wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Textbreite und Texthöhe bei der Ausgabe von Strings bestimmen (in Pixel)
Def GetTextExtentPoint32(4) !GDI32,GetTextExtentPoint32A
Def GetDC(1) !USER32,GetDC
Def ReleaseDC(2) !USER32,ReleaseDC
cls
UseFont Arial,48,0,0,0,0;0
Proc GetTextExtent
Parameters _t$,_w%
declare _size#,_text#,_result&,_hdc&
dim _text#,Len(_t$) + 1
dim _size#,8
String _text#,0 = _t$
_hdc& = GetDC(GetActiveWindow())
GetTextExtentPoint32(_hdc&,_text#,Len(_t$),_size#)
_result& = Long(_size#,4)
Case _w% : _result& = Long(_size#,0)
ReleaseDC(GetActiveWindow(),_hdc&)
dispose _text#
dispose _size#
return _result&
EndProc
Proc GetStringHeight
Parameters _t$
GetTextExtent _t$,0
Return &(0)
EndProc
Proc GetStringWidth
Parameters _t$
GetTextExtent _t$,1
Return &(0)
EndProc
declare StringBreite&,StringHoehe&,Text$
text$ = Guten Tag, lieber Computer!
GetTextExtent text$,1
StringBreite& = &(0)
GetTextExtent text$,0
StringHoehe& = &(0)
Cls
Print
Print Text: + text$
Print Breite: + str$(Stringbreite&) + Pixel
Print Höhe : + str$(StringHoehe&) + Pixel
WaitInput
|
|
|
| |
|
|