易语言GDI输出文字背景透明

易语言 2020-08-27 20:11:45

易语言GDI输出文字背景透明

hdc = 取设备场景_ (取窗口句柄 ())
hwnd = _启动窗口.取窗口句柄 ()
设置背景模式_ (hdc, #TRANSPARENT) ' OPAQUE的方式是用当前背景的画刷的颜色输出显示文字的背景,而TRANSPARENT是使用透明的输出,也就是文字的背景是不改变的.
调试输出 (文本绘图_ (hdc, 100, 100, 文本, 取文本长度 (文本)))
释放设备场景_ (取窗口句柄 (), hdc)

.DLL命令 释放设备场景_, 整数型, "user32", "ReleaseDC", , ReleaseDC
.参数 窗口句柄, 整数型, , hwnd,要释放的设备场景相关的窗口句柄
.参数 设备场景, 整数型, , hdc,要释放的设备场景句柄

.DLL命令 取设备场景_, 整数型, "user32", "GetDC", , 获取指定窗口的设备场景 指定窗口的设备场景句柄,出错则为0
.参数 窗口的句柄, 整数型, , 将获取其设备场景的窗口的句柄。若为0,则要获取整个屏幕的DC;

.DLL命令 文本绘图_, 整数型, "gdi32.dll", "TextOutA", , Long,非零表示成功,零表示失败。会设置GetLastError
.参数 设备场景, 整数型, , hdc,设备场景的句柄
.参数 横, 整数型, , x,绘图的起点,采用逻辑坐标
.参数 纵, 整数型, , y,绘图的起点,采用逻辑坐标
.参数 内容, 文本型, , lpstring,欲描绘的字串
.参数 内容数量, 整数型, , ncount,字串中要描绘的字符数量

.DLL命令 设置背景模式_, 整数型, "gdi32", "SetBkMode", , SetBkMode,Long,前一个背景模式的值
.参数 设备场景句柄, 整数型, , hdc,设备场景的句柄
.参数 方式, 整数型, , nBkMode,下述常数之一:OPAQUE用当前的背景色填充虚线画笔、阴影刷子以及字符的空隙TRANSPARENT透明处理,即不作上述填充