Zeilenhöhe ein Textzeile

03/06/2008 - 11:20 von George Löwer | Report spam
Hi ihr,

ich suche eine Möglichkeit die Höhe einer Textzeile aus einer Richtextbox zu
ermittlen.
Das was ich gefunden habe, war alles nur für die Textbox (gesamter Text
gleiche Schriftart usw.).
In der Richtextbox gibt es ja andere Formatierungsmöglichkeiten und diese
solen berücksichtigt werden.

Wàre für Hilfe dankbar.

Gruß George Löwer
 

Lesen sie die antworten

#1 Peter Götz
03/06/2008 - 19:00 | Warnen spam
Hallo George,

ich suche eine Möglichkeit die Höhe einer Textzeile
aus einer Richtextbox zu ermittlen.
Das was ich gefunden habe, war alles nur für die
Textbox (gesamter Text gleiche Schriftart usw.).
In der Richtextbox gibt es ja andere
Formatierungsmöglichkeiten und diese
solen berücksichtigt werden.



Die Höhe einer Zeile in der RTB richtet sich einfach
nach der darin enthaltenen höchsten Schriftart.
Für das dieser Schriftart entspr. Fontobjekt kannst
Du die Abmessungen eines Textes so ermitteln:

Dim strBuffer As String
Dim Fnt As Font
Dim H As Single
Dim B As Single

Set Fnt = New StdFont
With Fnt
.Name = "Arial"
.Size = 14
.Bold = False
.Italic = True
End With

strBuffer = "Zeile 1" & vbCrLf & _
"Zeile 2" & vbCrLf & _
"Zeile 3"

Me.Font = Fnt
H = Me.TextHeight(strBuffer)
B = Me.TextWidth(strBuffer)

H = Me.ScaleY(H, Me.ScaleMode, vbPixels)
B = Me.ScaleY(B, Me.ScaleMode, vbPixels)

MsgBox "Textbreite: " & CStr(B) & " Pixel" & vbCrLf & _
"Texthöhe: " & CStr(H) & " Pixel", vbInformation

Wobei sich Me auf eine Form bezieht, die zwangslàufig
mit der gleichen Bildschirmauflösung dargestellt wird,
wie eine auf ihr enthaltene RTB.

Für das Printer-Objekt gibt es entsprechend

Printer.TextWidht
Printer.TextHeight

Gruß aus St.Georgen
Peter Götz
www.gssg.de (mit VB-Tipps u. Beispielprogrammen)

Ähnliche fragen