var
bmih: BITMAPINFOHEADER;
bmi: PBitmapInfo;
index: integer;
bitmapData: T1BYTE;
begin bmih.biSize:= sizeof(BITMAPINFOHEADER);
bmih.biWidth:= 8;
bmih.biHeight:= 8;
bmih.biPlanes:= 1;
bmih.biBitCount:= 1;
bmih.biCompression:= BI_RGB;
bmih.biSizeImage:= 32;
bmih.biClrUsed:= 0;
bmih.biClrImportant:= 0;
getmem(bmi,sizeof(TBitmapInfoHeader)+sizeof(TRGBQuad)*2);
bmi^.bmiHeader:= bmih;
index:= 1;
bmi^.bmiColors[index].rgbBlue:= 0;//getbvalue(frontCol);
bmi^.bmiColors[index].rgbGreen:=0;//getgvalue(frontCol);
bmi^.bmiColors[index].rgbRed:=255; //getrvalue( frontCol);
bmi^.bmiColors[0].rgbBlue:=255; //getbvalue(backCol);
bmi^.bmiColors[0].rgbGreen:=255; //getgvalue(backCol);
bmi^.bmiColors[0].rgbRed:=255; //getrvalue( backCol); result:= CreateDIBitmap(0,bmih,CBM_INIT,PChar(@bitmapData), bmi^,DIB_RGB_COLORS );end;
///////////////
我创建的是 8×8的单色位图。
前景为红色。 背景为白色。
CreateDIBitmap()的第一个参数如果我去getdc(0).那么就是 (2个比特位/象素(16色)) 的彩图。如果是 0,则是黑白位图。请问怎么办呢。
bmih: BITMAPINFOHEADER;
bmi: PBitmapInfo;
index: integer;
bitmapData: T1BYTE;
begin bmih.biSize:= sizeof(BITMAPINFOHEADER);
bmih.biWidth:= 8;
bmih.biHeight:= 8;
bmih.biPlanes:= 1;
bmih.biBitCount:= 1;
bmih.biCompression:= BI_RGB;
bmih.biSizeImage:= 32;
bmih.biClrUsed:= 0;
bmih.biClrImportant:= 0;
getmem(bmi,sizeof(TBitmapInfoHeader)+sizeof(TRGBQuad)*2);
bmi^.bmiHeader:= bmih;
index:= 1;
bmi^.bmiColors[index].rgbBlue:= 0;//getbvalue(frontCol);
bmi^.bmiColors[index].rgbGreen:=0;//getgvalue(frontCol);
bmi^.bmiColors[index].rgbRed:=255; //getrvalue( frontCol);
bmi^.bmiColors[0].rgbBlue:=255; //getbvalue(backCol);
bmi^.bmiColors[0].rgbGreen:=255; //getgvalue(backCol);
bmi^.bmiColors[0].rgbRed:=255; //getrvalue( backCol); result:= CreateDIBitmap(0,bmih,CBM_INIT,PChar(@bitmapData), bmi^,DIB_RGB_COLORS );end;
///////////////
我创建的是 8×8的单色位图。
前景为红色。 背景为白色。
CreateDIBitmap()的第一个参数如果我去getdc(0).那么就是 (2个比特位/象素(16色)) 的彩图。如果是 0,则是黑白位图。请问怎么办呢。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货