# include“l_bitmap.h”
L_LTKRN_API L_HDC L_CreateLeadDC(pBitmap)
使用指定的位图作为显示表面,通过创建Microsoft Windows设备上下文提供一组强大的图形特性。
指向引用图像数据的LEAD位图句柄的指针。
价值 | 意义 |
---|---|
> 0 | 功能成功。返回值为HDC。 |
零 | 发生错误。 |
这允许您创建无限数量的绘图功能,如油漆,擦除,颜色擦除和刷,笔,喷枪,洪水填充,彩色管,文字覆盖,曲线,直线,矩形,多边形,椭圆,徒手形状,剪切和粘贴,等等。
所有Windows GDI函数都可以使用返回的HDC绘制到位图。HDC必须随L_DeleteLeadDC函数。
注意:对于WIN32应用程序,此函数确保位图的视图透视图为BOTTOM_LEFT,必要时翻转位图。这可能会影响使用位图坐标的函数。更多信息请参考考虑视角.
如果为位图定义了一个区域,GDI函数只作用于该区域,而不是整个位图。
DIB驱动程序只支持1、4、8、16、24和32位图像。如果您使用的图像每像素有其他位数,则必须使用L_ColorResBitmap将图像更改为DIB驱动程序支持的每像素位值。
所需的dll和库
x64 Win32。
有关完整的示例代码,请参阅DRAW示例。
这个例子使用GDI函数在位图上绘制一个椭圆。
L_INT CreateLeadDCExample (L_VOID)
{
L_INT nRet;
BITMAPHANDLE LeadBitmap;/*位图句柄为图片*/
HDC LeadDC;/*设备上下文为LEAD位图*/
L_INT startdix, StartGDIY, EndGDIX, EndGDIY;/*绘图坐标*/
/*加载位图在它自己的位每像素*/
nRet = L_LoadBitmap (MAKE_IMAGE_PATH(TEXT))“ImageProcessingDemo \ \ Image3.cmp”&LeadBitmap)),运算符(bitmaphandle), 0, order_bgr, null, null);
如果(nRet != SUCCESS)
返回nRet;
/*创建设备上下文*/
LeadDC = L_CreateLeadDC(&LeadBitmap);
/*设置绘图坐标在位图的左上象限*/
StartGDIX = BITMAPWIDTH(&LeadBitmap) / 8;
EndGDIX = BITMAPWIDTH(&LeadBitmap) / 2;
StartGDIY = BITMAPHEIGHT(&LeadBitmap) / 8;
EndGDIY = BITMAPHEIGHT(&LeadBitmap) / 2;
/*转换坐标如果必要的* /
如果(LeadBitmap。ViewPerspective != TOP_LEFT)
{
L_PointToBitmap (& leadbitmap, TOP_LEFT, & StartGDIX, & StartGDIY);
L_PointToBitmap (& leadbitmap, TOP_LEFT, & EndGDIX, & EndGDIY);
}
/*绘制椭圆*/
SelectObject (LeadDC GetStockObject (WHITE_PEN));
SelectObject (LeadDC GetStockObject (NULL_BRUSH));
SetROP2 (LeadDC R2_NOT);
椭圆(LeadDC, StartGDIX, StartGDIY, EndGDIX, EndGDIY);
/*删除设备上下文*/
L_DeleteLeadDC (LeadDC);
L_FreeBitmap (&LeadBitmap);
返回成功;
}
帮助收藏
光栅net|C API|c++类库|HTML5 JavaScript
文档net|C API|c++类库|HTML5 JavaScript
医疗net|C API|c++类库|HTML5 JavaScript
医疗网页查看器net
188宝金博怎么下载
支持的平台上
.NET、Java、Android和iOS/macOS程序集
C API/ c++类库
HTML5 JavaScript库
您的邮件已经发送到支持!应该有人保持联系!如果你有急事,请回来再谈。
聊天时间:
周一至周五,上午8:30至下午6点
感谢您的反馈!
请重新填写表格以开始新的聊天。
所有代理当前都处于离线状态。
聊天时间:
星期一至星期五
上午8:30 -下午6点
要联系我们,请填写此表格,我们将通过电子邮件与您联系。