2010-10-21 122 views
1

要顯示具有多種樣式的複雜多行標籤,我使用Swing的html呈現功能,並最終實現糟糕的字體呈現。爲什麼Java Swing html字體渲染看起來很糟糕?

我試圖明確地設置字體系列 -

​​

但相對於非HTML文本,HTML文本選擇JLabel總是呈現非常難看,看起來像螞蟻走樣沒有發生。我嘗試了字體流暢的CSS屬性:

<html><span style="font-family:Tahoma;font-smooth:always;"> 

但是Swing呈現的html仍然看起來很醜。如果我不在setText中使用html樣式,它看起來很好。我確保我使用相同的字體系列,字體大小等。

可能是什麼問題?

+2

你可以發表一個截圖顯示「蹩腳的」字體。我看到我的測試沒有問題 – Sean 2010-10-21 17:39:52

回答

1

我不知道你可能需要另行指定樣式像

"<html><style type = 'text/css'> span {font-family: Tahoma;} ...... <span>...." 

,而不是直接將它添加到span標記的。

+0

嘗試了幾個像你建議的變種,沒有骰子。 – 2010-10-22 00:06:04

1

試着用-Dswing.aatext=true標誌運行你的程序,它會強制它使用抗鋸齒。

如果您需要複雜的樣式,可以使用JTextPane。使它透明,不可編輯,刪除邊框,它看起來就像一個標籤。您可以應用不同的樣式,它將以抗鋸齒呈現,您不必處理html,它的支持不是很好。

相關問題