我們有一個最終用戶應用程序,它允許您將多行文本寫入文本框,並將此信息保留到文本文件中。在下一次會話中,從文件中檢索信息以顯示文本。問題是有時在下一個會話文本框的邊界切割文本,所以用戶不得不手動調整文本框的大小。我想以編程方式確定文本框是否需要調整大小。如何測量屏幕上繪製的文本行之間的空間?
GetTextExtentPoint32()似乎很適合基於選擇到設備上下文中的當前字體來測量該行的實際繪製寬度。但是現在我正在解決在垂直方向調整文本框邊界的需要。 GetTextExtentPoint32()確實給了我看起來正確的高度,但是我得到的總高度有點太小了。我相信我需要測量每條線之間的距離,但我不太確定?
更新:它看起來像我正在尋找TEXTMETRIC.tmExternalLeading和TEXTMETRIC.tmInternalLeading。有趣的是一些字體和大小,計算是現貨,我可以完美地適應我的文本。但對於一些字體和大小,計算有點太小,在這種情況下,它看起來是領先的太小或0?
搜索爲最終目標的值:計算文本的高度在文本框。 – 2013-02-01 18:32:55