字型模糊的解決辦法 Windows Mobile

2021-09-25 16:34:17 字數 1759 閱讀 9315

今天專案中有乙個問題,用dc在乙個24位的bitmap上寫字型,字型竟然模糊了,因為windows mobile的螢幕顏色深度是16位的。

以下是一位網友的**:

當壓縮格式為   bi_bitfields   時,在位圖資訊(即bitmapinfoheader)後面接著三個dword型資料,就是掩碼資料,  

一般為:0xf800(蘭色掩碼),0x07e0(綠色掩碼),0x001f(紅色掩碼),這是565的格式  

如果為:0x7c00,   0x03e0,   0x001f,   則是555的格式(這也是bitcount=16,而壓縮標誌為bi_dib時的預設格式)

bitmapinfo *bitmapinfo = (bitmapinfo*)malloc( sizeof(bitmapinfo)+sizeof(rgbquad)*(255) );

memset( bitmapinfo, 0, sizeof(bitmapinfo)+sizeof(rgbquad)*(255) );

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

bitmapinfo->bmiheader.biwidth = m_uwidth;

bitmapinfo->bmiheader.biheight = ulinecount*ulineheight + m_ulinespace*(ulinecount-1);

bitmapinfo->bmiheader.biplanes = 1;

bitmapinfo->bmiheader.bibitcount = 16;

bitmapinfo->bmiheader.bicompression = bi_bitfields;

bitmapinfo->bmiheader.bisizeimage = 0;

bitmapinfo->bmicolors[0].rgbblue   =   0;  

bitmapinfo->bmicolors[0].rgbgreen   =   0xf8;  

bitmapinfo->bmicolors[0].rgbred   =   0;  

bitmapinfo->bmicolors[0].rgbreserved   =   0;  

bitmapinfo->bmicolors[1].rgbblue   =   0xe0;  

bitmapinfo->bmicolors[1].rgbgreen   =   0x07;  

bitmapinfo->bmicolors[1].rgbred   =   0;  

bitmapinfo->bmicolors[1].rgbreserved   =   0;  

bitmapinfo->bmicolors[2].rgbblue   =   0x1f;  

bitmapinfo->bmicolors[2].rgbgreen   =   0;  

bitmapinfo->bmicolors[2].rgbred   =   0;  

bitmapinfo->bmicolors[2].rgbreserved   =   0; 

m_hbitmap = createdibsection( m_hcompatibledc, bitmapinfo, dib_rgb_colors, &pbitmapbuffer, null, null );

getobject( m_hbitmap, sizeof(dibsection), &dibsection ); 

把這個位圖選入dc,然後draw text,字型就清楚了。

Git 字型警告 解決辦法

最近在使用git,不得不說這是乙個非常不錯的工具,不論是對程式設計師還是其人 尤其是些公文 專案文件什麼的也是非常有用的 今天使用中不斷出現一段錯誤警告 warning your console font probably doesn t support unicode.if you experie...

CAD字型顯示問號的解決辦法

cad字型顯示問號的解決辦法 1 選中問號的文字,ctrl 1檢視下文字樣式,以standard為例。2 執行st命令,設定standard樣式的字型名為windows自帶的ttf字型,例如宋體或者仿宋,確認,這樣能解決90 以上的問題,而且方法很簡單。3 如果還有字型是問號,不但要設定小字型,還要...

Flex 使用中文裝置字型 解決辦法

flex 使用中文裝置字型 解決辦法。大家知道flex 對中文裝置字型的支援很差,僅僅對 華文楷體 華文細黑 華文仿宋 華文中宋 等 我機子上就測試了這麼多,但我機子上的字型還是比較全的 當然也不僅僅是 flex了,用flex ide 和 flash ide 用 寫的texifield,編譯出的fl...