DOBON.NET DOBON.NETプログラミング掲示板過去ログ

RichTextBoxで1行あたりの高さの求め方

環境/言語:[Windows7 FrameWork4 VS2010]
分類:[.NET]

いつもお世話になっています。
RichTextBoxで1行あたりの高さを求めたいのですが、どうすればいいのでしょうか?

Dim fnt As New Font("MS UI Gothic", 9)
Dim fntheight As Single = fnt.GetHeight

フォント自体の高さを求めることはできるのですが、
文字と文字の間(行間)に余白部分があるため、この値は正しくないようです。

何か求めるためのメソッドがあるようにも思えるのですが、GetLineSpacingではうまく値が取れてきませんでした。

知っている方、ヒントでもいいので教えてもらえませんか。

よろしくお願いします。
■No30480に返信(sakuさんの記事)

Line Numbering of RichTextBox in .NET 2.0 - CodeProject
http://www.codeproject.com/Articles/14566/Line-Numbering-of-RichTextBox-in-NET-2-0

にRichTextBox.GetPositionFromCharIndexメソッドを使用して1行の高さを計算しているコードがありました。抜粋させていただくと、次のような感じです。

Dim font_height As Single
With RichTextBox1
font_height = .GetPositionFromCharIndex(.GetFirstCharIndexFromLine(2)).Y - .GetPositionFromCharIndex(.GetFirstCharIndexFromLine(1)).Y
End With
ご返答ありがとうございました。

教えていただいたコードを基にプログラムを組んでみましたところ、
無事、正しい1行の高さを取得することができました。

お手数をおかけしました。

感謝です。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板