2013-04-03 29 views
6

有沒有一種方法可以在窗體中獲得更好的文本渲染質量?在C#winforms中獲得更好的文本渲染質量

我試着玩「TextRenderingHint」,但沒用。

字體是Helvetica Neue LT Pro,並且在photoshop中創建的所需結果出現在所附圖像的左側。我使用.otf文件作爲資源在.NET中引入了它。

enter image description here

+0

你把圖片放在什麼控件上? – MoonKnight

+0

這是一個按鈕控件,我不想在控件上放置圖像,我想渲染普通文本。圖像總是可能的,但很難保持 – mustafabar

+0

你的「Helvetica Neue LT Pro」字體是一個photoshop專用字體還是內置的windows字體?你的程序將被安裝嗎? 您必須確保您的按鈕不會回落到其他字體,因爲您的Helvetica字體可能不存在 – Siraf

回答

4

Winforms不支持OpenType字體。所以Windows字體映射器找到了一個替代TrueType字體。它類似於你的原始字體,但當然不會相同。沒有啓用ClearType也不會改善結果。

Windows中的Open Type字體支持通常不是很好。通常只能依靠Adobe程序來支持它,對於使用GDI或GDI +呈現文本的程序,沒有像樣的後備。我只知道WPF是一個支持它的GUI生成器工具。處理Windows上無償的Adobe產品兼容性問題有着悠久的歷史。並且類似於我使用Flash或Reader時所體驗到的快樂。

1

我的建議將首先使你的形象,你需要的按鈕是結合保證金要求的確切大小。然後TextImageRelation = ImageAboveTextImageAlign = MiddleCenter,AutoSize = TrueAutoSizeMode = GrowAndShrink

這是關於除了切換到WPF之外所能做的所有事情,並從您的令人驚歎的WPF按鈕開始生活愉快。

我希望這會有所幫助。