2014-04-01 58 views
2

我正在使用SWT並希望使用gc'sdrawstring函數,但我無法設置字體的字間距,是否有任何方法可以這樣做?由於如何在SWT字體中設置字距

更新
我已經試過TexetLayout與代碼

TextLayout layout = new TextLayout(printer); 
layout.setWidth(gc.stringExtent(text).x/2); 
layout.setText(text); 
layout.draw(gc, x, y); 

僅供參考,我「米試圖使用的打印機和gc構造與printer過,但我沒有得到任何東西打印在紙上,我錯了關於使用textlayout,或者你能否提供一些代碼片段供我參考?

+0

添加您嘗試使用的代碼。 –

+0

對不起,我不知道如何設置字間距,所以我的問題應該是**如何設置字間距?**我已經做了一些搜索,並沒有找到一種方法來獲取它工作。再次感謝。 – richard

回答

0

的例子,我發現了一個變通方法,可能不是完美的,我用Transform's scale的寬度設定爲一定值,並以這種方式。字間距沒有改變,但一個字的總寬度改變了,這可以滿足我。

1

GCdrawStringdrawText對此沒有任何支持。

您可以使用GC.textExtent來獲取您可以使用的文本的長度。

TextLayout類對文本對齊有一定的支持。

更新:有一些使用TextLayout的here

+0

我已經更新了這個問題,你可以幫我嗎? – richard

+0

我已經瀏覽了頁面,但是仍然沒有找到如何設置字間距。哪種方法可以處理它? – richard

+0

我沒有說它可以做字間距。我說它支持正當性 - 「setJustify(true)'。 –