L_AddMessageToBitmap

# include“l_bitmap.h”

L_LTIMGEFX_APIL_INTL_AddMessageToBitmap (pBitmap pAddMesgInfo uFlags)

添加一个消息(文本或文件)到指定的位图。指定的消息pAddMesgInfo参数。

参数

pBITMAPHANDLEpBitmap

位图句柄指针引用目标位图。这个位图的功能更新。

pADDMESGINFOpAddMesgInfo

指针指向一个ADDMESGINFO结构,其中包含的信息将被添加的信息。

L_UINT32uFlags

保留以供将来使用。必须是0。

返回

价值 意义
成功 函数是成功的。
< 1 一个错误发生。指返回代码

评论

这个函数的目的是为了安全自消息添加将嵌入到图像没有任何可见的变化和由此产生的图像具有相同的大小与原始。

这个函数可以将消息添加到任何类型的losslese形象如bmp、tiff、无损的jpeg,等等。如果使用有损格式类型消息可能会损坏或丢失。

这个函数支持24 - 48个位图片,和8 - 16位灰度图像。

提取嵌入消息使用L_ExtractMessageFromBitmap函数。

更新状态栏或检测用户中断在执行这个函数,引用L_SetStatusCallback

这个函数不支持32位灰度图像。它返回错误代码ERROR_GRAY32_UNSUPPORTED如果一个32位的灰度图像是传递给这个函数。

必需的dll和库

平台

Win32 x64, Linux。

另请参阅

功能

主题

例子

这个示例加载位图,并添加一个文本消息

L_INT AddMessageToBitmapExample (L_VOID){L_INT nRet;BITMAPHANDLE pBitmap;pADDMESGINFO pADDMESGINFO;pAddMesgInfo = (pAddMesgInfo) GlobalAllocPtr (GHND运算符(ADDMESGINFO));如果(pAddMesgInfo !)返回ERROR_NO_MEMORY;pAddMesgInfo - > uStructSize =运算符(ADDMESGINFO);pAddMesgInfo - > pStrMsg = (L_TCHAR *) GlobalAllocPtr (GHND, 200);如果(! pAddMesgInfo - > pStrMsg)返回ERROR_NO_MEMORY;/ *加载位图,保持文件的比特每像素* /nRet = L_LoadBitmap (MAKE_IMAGE_PATH(文本(“IMAGE1.CMP”&pBitmap)),运算符(BITMAPHANDLE), 0 ORDER_BGR空,空);如果(nRet ! =成功)返回nRet;lstrcpy (pAddMesgInfo - > pStrMsg文本(“技术领先,公司。”));/ *添加上面的图像信息默认的位置和默认的密码* /nRet = L_AddMessageToBitmap (&pBitmap pAddMesgInfo 0);如果(nRet ! =成功)返回nRet;/ *免费临时缓冲区。* /如果(pAddMesgInfo - > pStrMsg)GlobalFreePtr (pAddMesgInfo - > pStrMsg);如果(pAddMesgInfo)GlobalFreePtr (pAddMesgInfo);nRet = L_SaveBitmap (MAKE_IMAGE_PATH(文本(“Result.BMP”))、&pBitmap FILE_BMP, 24岁,0,NULL);如果(nRet ! =成功)返回nRet;/ /免费的位图如果(pBitmap.Flags.Allocated)L_FreeBitmap (&pBitmap);返回成功;}

LEADTOOLS光栅成像C API的帮助
188金宝搏的网址客服|支持|联系我们|知识产权的通知
©1991 - 2021领先的技术公司。保留所有权利。