1. qimage簡介
qt中提供了四個處理影象資料的類:qimage、qpixmap、qbitmap、qpicture。
qimage提供了允許直接訪問畫素資料的硬體無關的影象顯示方案,能夠用作繪圖裝置。
qimage專門為i/o、直接畫素訪問操作而設計,並進行了優化。訪問的畫素或是修改畫素,則需要使用qimage,或者借助於qpainter來操作畫素。
由於qimage繼承自qpaintdevice,qpainter可以直接在qimage上繪圖。當在qimage上使用qpainter時,繪製可以在另乙個執行緒中進行,而不是當前的gui執行緒。
qimage可通過setpixpel()和pixel()等方法直接訪問指定的畫素。
2. qimage建構函式和相關函式
qimage:
:qimage(const qsize & size, format format
)qimage:
:qimage(
int width,
int height, format format
)qimage:
:qimage(uchar * data,
int width,
int height, format format
)qimage:
:qimage(const uchar * data,
int width,
int height, format format
)qimage:
:qimage(uchar * data,
int width,
int height,
int bytesperline, format format
)qimage:
:qimage(const uchar * data,
int width,
int height,
int bytesperline, format format
)qimage:
:qimage(const char * const[
] xpm)
qimage:
:qimage(const qstring & filename, const char *
format=0
)qimage:
:qimage(const char * filename, const char *
format=0
)qimage:
:qimage(const qimage & p_w_picpath)
uchar * qimage:
:bits (
)const uchar * qimage:
:bits (
) const #返回指向第乙個畫素資料的指標
int qimage:
:bytecount (
) const # 返回影象資料佔據的位元組數
qimage qimage:
:copy ( const qrect & rectangle = qrect(
)) const # 拷貝影象中的某個區域作為新的影象
qimage qimage:
:copy (
int x,
int y,
int width,
int height ) const # 拷貝(x,y)點開始(width,heith)的矩形區域作為新的影象
qrgb qimage:
:pixel ( const qpoint & position ) const
qrgb qimage:
:pixel (
int x,
int y ) const # 返回某點的畫素的顏色
qsize qimage:
:size (
) const # 回影象的尺寸大小
int qimage:
:width (
) const # 返回影象的寬
int qimage:
:height (
) const # 返回影象的高
qimage qimage:
:fromdata(const uchar * data,
int size, const char *
format=0
)[static]
# 將給定的二進位制資料data的前size位元組資料按指定的影象格式format構造影象
qimage qimage:
:fromdata(const qbytearray & data, const char *
format=0
)[static]
# 從給定的資料data中載入影象
bool qimage:
:loadfromdata(const uchar * data,
intlen
, const char *
format=0
)bool qimage:
:loadfromdata(const qbytearray & data, const char *
format=0
)# 從給定資料data中載入影象
qimage:
:operator qvariant(
) const # 返回變體型別的影象
使用Qimage指標存在的風險
第一種方式處理影象,不會導致記憶體緩慢增長 直接繪製緩衝區影象,用處理三色單通道板卡庫提供的緩衝區位址 qimage cigrabthread draw3chalbuffer unsigned char ptrnew,unsigned char ptrbuffer,int imgpixsize,lo...
建構函式的使用
在c 中,我們一般會利用建構函式來初始化類裡面的成員函式,先看下面一段 可以自己先考慮輸出語句會不會是0?include using namespace std struct cls cls int main cls obj cout 在 第10行,不帶引數的建構函式直接呼叫了帶引數的建構函式。這種...
建構函式的使用
個人理解的建構函式的使用 function person name,height var person person xiaoli 180 var person1 person xiaohei 170 列印出來的結果是 person object person1 object 個人理解 functi...