QT中文字的繪製

2022-04-04 02:17:19 字數 870 閱讀 4584

為什麼要做這次文字的介紹,因為在一般的教材中,還真沒有文字的描述:

1.繪製最簡單的文字。

我們更改重繪函式如下:

void dialog::paintevent(qpaintevent *)

我們在(100,100)的位置顯示了一行文字,效果如下。

2.為了更好的控制字型的位置。我們使用另乙個建構函式。在幫助裡檢視drawtext,如下。

這裡我們看到了建構函式的原型和例子。其中的flags引數可以控制字型在矩形中的位置。我們更改函式內容如下。

void dialog::paintevent(qpaintevent *)

效果如下。

可以看到字串是在最上面水平居中的。如果想讓其在矩形正中間,我們可以使用qt::aligncenter。

這裡我們也可以使用兩個列舉變數進行按位與操作,例如可以使用qt::alignbottom|qt::alignhcenter實現讓文字顯示在矩形下面的正中間。效果如下。

對於較長的字串,我們也可以利用「\n」進行換行,例如」yafei\nlinux」。效果如下。

3.如果要使文字更美觀,我們就需要使用qfont類來改變字型。先在幫助中檢視一下這個類。

可以看到它有好幾個列舉變數來設定字型。下面的例子我們對主要的幾個選項進行演示。

更改函式如下。

void dialog::paintevent(qpaintevent *)

效果如下。

這裡的所有字型我們可以在設計器中進行檢視。如下。

QT文字繪製

1 基本繪製 qpainter painter this 這個this要斟酌下 painter.drawtext 100,100,yafeilinux 2 中級繪製 qpainter painter this qrectf ff 100,100,300,200 設定乙個矩形 painter.draw...

Qt繪製文字

1 基本繪製 qpainter painter this 這個this要斟酌下 painter.drawtext 100,100,yafeilinux 2 中級繪製 qpainter painter this qrectf ff 100,100,300,200 設定乙個矩形 painter.draw...

qt繪製文字

前面講解了 qt 圖形的基本繪製,包括 直線 弧線 矩形 橢圓 多邊形,以及其它一些高階用法,比如 漸變 轉換等。本節主要分享文字的繪製。主要通過 qpainter 的 darwtext 函式來實現,裡面包含多個過載函式,其中,可以通過 qrect 來指定繪製的區域,也可以通過 qpoint 來指定...