易语言PNG图片合成源码例程
系统结构:子程序1,子程序2,子程序3,GetBitsFromBitmapHandle,A2W,W2A,依附,Load,Disconnect,GetStateInfo,StretchBlt,取指针指向整数,取对象指针,调用方法,到UNICODE编码,取字节集指针,取整数指针,GetObjectA,CreateCompatibleDC,GetDIBits_BimapInfo,GetDIBits,CopyMemory_BITMAPINFO,CopyMemory_BITMAPFILEHEADER,DeleteDC,GetDC,ReleaseDC,LoadImageA,SelectObject,CreatePatternBrush,FillRect,GdipLoadImageFromFile,GdipDrawImageI,MultiByteToWideChar,WideCharToMultiByte,CoCreateInstance,动态调用子程序_API,TestLenM2W,取对象指针_API,复制整数_API,复制尺寸数据_API,取字节集指针_API,取整数指针_API,TextOutA,ExtTextOutA,SetBkMode,SetTextColor,CreateFontIndirectA,DeleteObject,DLL命令1,
======窗口程序集1
| |
| |------ __启动窗口_创建完毕
| |
| |------ 子程序1
| |
| |------ _按钮1_被单击
| |
| |------ 子程序2
| |
| |------ 子程序3
| |
| |
======程序集
| |
| |------ GetBitsFromBitmapHandle
| |
| |------ A2W
| |
| |------ W2A
| |
| |
======图像类
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ 依附
| |
| |------ Load
| |
| |------ Disconnect
| |
| |------ GetStateInfo
| |
| |------ StretchBlt
| |
| |
======PNG程序集
| |
| |------ 取指针指向整数
| |
| |------ 取对象指针
| |
| |------ 调用方法
| |
| |------ 到UNICODE编码
| |
| |------ 取字节集指针
| |
| |------ 取整数指针
| |
| |
======调用的Dll
| |
| |---[dll]------ GetObjectA
| |
| |---[dll]------ CreateCompatibleDC
| |
| |---[dll]------ GetDIBits_BimapInfo
| |
| |---[dll]------ GetDIBits
| |
| |---[dll]------ CopyMemory_BITMAPINFO
| |
| |---[dll]------ CopyMemory_BITMAPFILEHEADER
| |
| |---[dll]------ DeleteDC
| |
| |---[dll]------ GetDC
| |
| |---[dll]------ ReleaseDC
| |
| |---[dll]------ LoadImageA
| |
| |---[dll]------ SelectObject
| |
| |---[dll]------ CreatePatternBrush
| |
| |---[dll]------ FillRect
| |
| |---[dll]------ GdipLoadImageFromFile
| |
| |---[dll]------ GdipDrawImageI
| |
| |---[dll]------ MultiByteToWideChar
| |
| |---[dll]------ WideCharToMultiByte
| |
| |---[dll]------ ____分割线1开始____
| |
| |---[dll]------ CoCreateInstance
| |
| |---[dll]------ 动态调用子程序_API
| |
| |---[dll]------ TestLenM2W
| |
| |---[dll]------ 取对象指针_API
| |
| |---[dll]------ 复制整数_API
| |
| |---[dll]------ 复制尺寸数据_API
| |
| |---[dll]------ 取字节集指针_API
| |
| |---[dll]------ 取整数指针_API
| |
| |---[dll]------ ____分割线1结束____
| |
| |---[dll]------ TextOutA
| |
| |---[dll]------ ExtTextOutA
| |
| |---[dll]------ SetBkMode
| |
| |---[dll]------ SetTextColor
| |
| |---[dll]------ CreateFontIndirectA
| |
| |---[dll]------ DeleteObject
| |
| |---[dll]------ DLL命令1
调用的DLL命令:
.DLL命令 GetObjectA, 整数型, , "GetObjectA"
.参数 hgdiobj
.参数 cbBuffer
.参数 lpvObject, BITMAP
.DLL命令 CreateCompatibleDC, 整数型, , "CreateCompatibleDC"
.参数 hdc, 整数型
.DLL命令 GetDIBits_BimapInfo, 整数型, , "GetDIBits"
.参数 HDC
.参数 hBitmap
.参数 nStartScan
.参数 nNumScans
.参数 lpBits
.参数 lpBI, BITMAPINFO
.参数 wUsage
.DLL命令 GetDIBits, 整数型, , "GetDIBits"
.参数 HDC
.参数 hBitmap
.参数 nStartScan
.参数 nNumScans
.参数 lpBits, 字节集
.参数 lpBI, BITMAPINFO
.参数 wUsage
.DLL命令 CopyMemory_BITMAPINFO, 整数型, , "RtlMoveMemory"
.参数 Destination, 字节集
.参数 Source, BITMAPINFO
.参数 Length
.DLL命令 CopyMemory_BITMAPFILEHEADER, 整数型, , "RtlMoveMemory"
.参数 Destination, 字节集
.参数 Source, BITMAPFILEHEADER
.参数 Length
.DLL命令 DeleteDC, 整数型, , "DeleteDC"
.参数 hdc
.DLL命令 GetDC, 整数型, , "GetDC"
.参数 hwnd, 整数型
.DLL命令 ReleaseDC, , , "ReleaseDC"
.参数 hwnd, 整数型, , 要释放的设备场景相关的窗口句柄
.参数 hdc, 整数型, , 要释放的设备场景句柄
.DLL命令 LoadImageA, 整数型, , "LoadImageA"
.参数 hInst, 整数型
.参数 lpsz, 文本型
.参数 un1, 整数型
.参数 n1, 整数型
.参数 n2, 整数型
.参数 un2, 整数型
.DLL命令 SelectObject, 整数型, , "SelectObject"
.参数 hdc, 整数型, , 一个设备场景的句柄
.参数 hObject, 整数型, , 一个画笔、位图、刷子、字体或区域的句柄
.DLL命令 CreatePatternBrush, 整数型, , "CreatePatternBrush"
.参数 hBitmap
.DLL命令 FillRect, , , "FillRect"
.参数 hdc
.参数 lpRect, 点
.参数 hBrush
.DLL命令 GdipLoadImageFromFile, 整数型, "GdiPlus.dll", "GdipLoadImageFromFile"
.参数 filename, 字节集
.参数 image, 整数型, 传址
.DLL命令 GdipDrawImageI, 整数型, "GdiPlus.dll", "GdipDrawImageI"
.参数 graphics, 整数型
.参数 image, 整数型
.参数 x, 整数型
.参数 y, 整数型
.DLL命令 MultiByteToWideChar, 整数型, , "MultiByteToWideChar", , 返回 WideChar字符数目,包括结尾0
.参数 CodePage, 整数型
.参数 dwFlags, 整数型
.参数 lpMultiByteStr, 文本型
.参数 cchMultiByte, 整数型
.参数 lpWideCharStr, 字节集
.参数 cchWideChar, 整数型
.DLL命令 WideCharToMultiByte, 整数型, , "WideCharToMultiByte", , 返回 MultiByte字符数目,包括结尾0
.参数 CodePage, 整数型
.参数 dwFlags, 整数型
.参数 lpWideCharStr, 整数型
.参数 cchWideChar, 整数型
.参数 lpMultiByteStr, 文本型
.参数 cchMultiByte, 整数型
.参数 unknow, 整数型
.参数 unknow, 整数型
.DLL命令 ____分割线1开始____
.DLL命令 CoCreateInstance, 整数型, "ole32.dll"
.参数 CLSID, 字节集
.参数 pUnkOuter
.参数 服务器类型
.参数 接口的IID, 字节集
.参数 接口对象, 对象
.DLL命令 动态调用子程序_API, 整数型, , "CallWindowProcA"
.参数 动态调用代码, 字节集, , 一定要用本人编写的
.参数 子程序, 整数型, , 子程序指针
.参数 参数, 整数型, 数组, 为整数数组,参数1为成员1…类推;文本型和字节集型(自定义结构)为指针
.参数 参数数目, 整数型, , 一定要和参数数组相符,不然会出错
.参数 是否C调用, 逻辑型, , 真为cdecl调用方式,假为stdcall调用方式(即标准WINAPI方式)
.DLL命令 TestLenM2W, 整数型, , "MultiByteToWideChar", , MultiByteToWideChar (950, 0, pszBig5, -1, wszUnicode,iLen);
.参数 a
.参数 b0
.参数 pszBig5, 文本型
.参数 a_1
.参数 a0
.参数 a1
.DLL命令 取对象指针_API, 整数型, , "lstrcpyn"
.参数 欲取其指针的整数, 对象, 传址, 一定要传址
.参数 欲取其指针的整数, 对象, 传址, 一定要传址.重复一次,骗骗Windows:)
.参数 保留, 整数型, , 0
.DLL命令 复制整数_API, , , "RtlMoveMemory"
.参数 Destination, 整数型, 传址
.参数 Source, 整数型
.参数 Length, 整数型
.DLL命令 复制尺寸数据_API, , , "RtlMoveMemory"
.参数 Destination, 点
.参数 Source, 字节集
.参数 Length, 整数型
.DLL命令 取字节集指针_API, 整数型, , "lstrcpyn"
.参数 欲取其指针的变量, 字节集
.参数 欲取其指针的变量, 字节集
.参数 保留, 整数型, , 0
.DLL命令 取整数指针_API, 整数型, , "lstrcpyn"
.参数 欲取其指针的变量, 整数型, 传址
.参数 欲取其指针的变量, 整数型, 传址
.参数 保留, 整数型, , 0
.DLL命令 ____分割线1结束____
.DLL命令 TextOutA, , , "TextOutA"
.参数 hdc
.参数 x
.参数 y
.参数 lpString, 文本型
.参数 nCount
.DLL命令 ExtTextOutA, , , "ExtTextOutA"
.参数 hdc
.参数 x
.参数 y
.参数 wOptions
.参数 lpRect
.参数 lpString, 文本型
.参数 nCount
.参数 lpDx
.DLL命令 SetBkMode, , , "SetBkMode"
.参数 hdc
.参数 nBkMode
.DLL命令 SetTextColor, , , "SetTextColor"
.参数 hdc
.参数 crColor
.DLL命令 CreateFontIndirectA, 整数型, , "CreateFontIndirectA"
.参数 lpLogFont, LOGFONT
.DLL命令 DeleteObject, 整数型, , "DeleteObject"
.参数 hObject, 整数型
.DLL命令 DLL命令1
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。