qt繪製漸變區域

2022-01-28 16:05:08 字數 608 閱讀 4454

// 原理:通過點到線,然後疊加成區域。同理,可使用其他圖形

qpainter painter(m_pwidget);

qlineargradient lineargradient(qpointf(

0, 0), qpointf(m_ipainterlevelpoint, 0

));

//從點(0,0)開始到點(m_ipainterlevelpoint,0)結束,確定一條直線

lineargradient.setcolorat(0

,qt::black);

lineargradient.setcolorat(

1,m_colordestinationcolor);

//指定漸變區域以外的區域的擴散方式

lineargradient.setspread(qgradient::repeatspread);

//將直線開始點設為0,終點設為1,然後分段設定顏色

painter.setbrush(lineargradient);

painter.drawrect(-1,-1,m_pwidget->width()+1,m_pwidget->height()+1);

繪製漸變色

迴圈改變的畫素值,請注意每一行使用乙個顏色。int data new int fontimage.getwidth fontimage.getheight fontimage.getrgb data,0,fontimage.getwidth 0,0,fontimage.getwidth fontim...

qt漸變效果

出處 前面說了有關反走樣的相關知識,下面來說一下漸變。漸變是繪圖中很常見的一種功能,簡單來說就是可以把幾種顏色混合在一起,讓它們能夠自然地過渡,而不是一下子變成另一種顏色。漸變的演算法比較複雜,寫得不好的話效率會很低,好在很多繪圖系統都內建了漸變的功能,qt也不例外。漸變一般是用在填充裡面的,所以,...

Qt 漸變(06) 錐形漸變的使用

在qt中錐形漸變屬於是最簡單的漸變。只需要定義乙個中心點,和乙個其實角度,按照逆時針方向進行漸變,而且沒有spread設定 qconicalgradient 錐形漸變插值圍繞中心點逆時針插值。qconicalgradient 使用qgradientstop型別的停止點 即位置和顏色 定義漸變中的顏色...