在MFC中顯示cv Mat

2021-06-22 12:07:47 字數 1438 閱讀 1415

void bitmattownd(cwnd* pwnd, cv::mat img, crect *roi)

else if( ichannels == 3)

else

if(bitbuffer == null)

bitmapinfo = (bitmapinfo *)bitbuffer;

bitmapinfo->bmiheader.bisize = sizeof(bitmapinfoheader);

bitmapinfo->bmiheader.biheight = -img.rows; //如果高度為正的,點陣圖的起始位置在左下角。如果高度為負,起始位置在左上角。

bitmapinfo->bmiheader.biwidth = img.cols;

bitmapinfo->bmiheader.biplanes = 1; // 目標裝置的級別,必須為1

bitmapinfo->bmiheader.bibitcount = ichannels *8; // 每個畫素所需的位數,必須是1(雙色), 4(16色),8(256色)或24(真彩色)之一

bitmapinfo->bmiheader.bicompression = bi_rgb; //位圖壓縮型別,必須是 0(不壓縮), 1(bi_rle8壓縮型別)或2(bi_rle4壓縮型別)之一

bitmapinfo->bmiheader.bisizeimage = 0; // 點陣圖的大小,以位元組為單位

bitmapinfo->bmiheader.bixpelspermeter = 0; // 位圖水平解析度,每公尺畫素數

bitmapinfo->bmiheader.biypelspermeter = 0; // 位圖垂直解析度,每公尺畫素數

bitmapinfo->bmiheader.biclrused = 0; // 位圖實際使用的顏色表中的顏色數

bitmapinfo->bmiheader.biclrimportant = 0; // 位圖顯示過程中重要的顏色數

if(ichannels == 1)

bitmapinfo->bmiheader.biclrused = 256; // 位圖實際使用的顏色表中的顏色數

} setstretchbltmode(hdc, coloroncolor);

stretchdibits(hdc,

0, 0,

drect.right, //顯示視窗寬度

drect.bottom, //顯示視窗高度

0, 0,

img.cols, //影象寬度

img.rows, //影象高度

img.data,

bitmapinfo,

dib_rgb_colors,

srccopy

); delete bitbuffer;

}

在MFC程式中顯示WPF視窗

最近想要在原有系統 基於mfc,非託管 中加入wpf的介面。搜尋了一段時間,發現大部分文章都是在談託管程式c 中呼叫wpf,還是不太適合我的需要。於是自己嘗試著從本機c 的mfc程式中呼叫wpf,使用c 實現乙個com元件作為中間層。目標是在mfc程式中彈出乙個wpf視窗。新增乙個window,命名...

MFC 在桌面顯示文字

cwindowdc dc null cfont myfont myfont.createfont 120,nheight 字型高度 40,nwidth 字型寬度 0,nescapement 顯示角度 0,norientation 字型角度 fw normal,nweight 字型磅值 false,b...

在MFC程式中新增全屏顯示功能

這是工作室為實現全屏顯示所髮集的乙個演示程式。你可以通過選擇全屏顯示選單選項時看到相應的效果。這段 包括兩個內容 全屏顯示,浮動工具條 用於恢復操作 下圖便是全屏狀態和用於切換的浮動工具條 具體實現步驟 以下的 被新增到cmainframe類中。這裡是使用到的四個訊息以及他們的簡要說明 1 onvi...