2010-05-07 31 views
2

問題A.如何在換行後獲得富文本內容的高度?

鑑於

  1. 在富文本格式的字符串,可能有款,製表符,空格,換行,縮進(甚至像?)
  2. 寬度的字包裝富文本控制/編輯

如何知道內容的高度後,它已經執行所有的字換行? 有沒有像

int MeasureRichTextHeightAfterWordWrap(string aRichTextContent,int aWidth)?

否則那些富文本控件如何知道自動調整大小?

我是否必須將內容實際放置在虛擬富文本控件上,然後設置其寬度並使用GetPositionFromCharIndex(TextLength-1)獲取其高度? 雖然這個工作,它似乎是「浪費」

問題B. 如果我畫的純文本到純文本備忘錄/控制/編輯器, 和手動繪製字符串手工計算壓痕,休息,字包裝紙假裝RTF。

更容易還是更難?

爲了讓它看起來更清晰 而編輯,如果我的英語看起來像學生,不好意思,因爲它不是我的母語。

回答

1

對不起,我第一次嘗試答案不好。我DID找到一個測量裏面的RichTextBox的答案。顯然你必須使用Win32 GDI API調用。

http://www.tech-archive.net/Archive/DotNet/microsoft.public.dotnet.framework.windowsforms.controls/2004-09/0574.html

我發現這個通過在這塊金塊,這也解釋了爲什麼有不是一個純粹的.NET辦法做到這一點後運行改變我的搜索:

http://www.developmentnow.com/g/38_2005_10_0_0_626243/I-dont-believe-this-code-gives-the-correct-RichTextBox-string-size.htm

相關問題