ImagingHelper类参考

Imaging COM 接口的封装. 更多...

#include <ImagingHelper.h>

所有成员的列表。

公有成员

bool AdjustBrightness (float fBrightness)
 调节图像亮度 (使用的是IImage的亮度调节功能,只当加载图像的IImage对象没被释放才能使用)
BOOL AttachBitmap (HBITMAP hBmpSrc, bool isAlpha, bool deleteBmpSrcOnDestruct=true)
 使用现有位图作为对象内的图像
HBITMAP CreateBitmap (__in RECT *prcSrc=0, bool bUseAlpha=true)
void Draw (__in HDC hdcDst, __in RECT *prcDst, bool bStretch=false, bool bStretchScale=false)
 绘制已成功加载的图像
void DrawGif (HDC hdcDst, RECT *prcDst, bool bStretch=false, bool bStretchScale=false)
WORD GetCurrentGifDelay ()
WORD GetCurrentGifFrame ()
MZFC_INLINE HDC GetDC ()
 获得内置DC
BOOL GetExtendedProperty_ImagingHelper (int nPropertyType, void *pValue, int nBufSize)
 获取或设置对象的扩展属性值
IImage * GetIIMage ()
 获得图像的IImage指针
MZFC_INLINE int GetImageHeight ()
 获得图像的高
MZFC_INLINE int GetImageWidth ()
 获得图像的宽
 ImagingHelper (void)
bool IsGif ()
MZFC_INLINE bool IsImageAlpha ()
 图像中是否带alpha通道
MZFC_INLINE bool IsLoadedToDC ()
 图像是否已加载到内置DC
BOOL LoadGif (LPCWSTR filename, bool bCopyToInternalDC, bool bUnloadAfterCopy)
BOOL LoadImage (LPCWSTR filename, bool bCopyToInternalDC, bool bUnloadAfterCopy, bool bUseAlpha=true)
virtual BOOL LoadImageFromBuffer (LPVOID pBuffer, DWORD dwSize, bool bCopyToInternalDC, bool bUnloadAfterCopy, bool bUseAlpha=true)
 从buffer加载图像
virtual BOOL LoadImageFromRes (HINSTANCE hInst, LPCWSTR lpType, LPCWSTR lpName, bool bCopyToInternalDC, bool bUnloadAfterCopy, bool bUseAlpha=true)
 从资源模块加载图像
BOOL LoadToInternalDC (bool bUseAlpha)
 把对象中的IImage图像加载到内置DC中
 operator HDC () const
 获得内置DC
void SetCurrentGifFrame (WORD curFrame)
BOOL SetExtendedProperty_ImagingHelper (int nPropertyType, void *pValue, int nBufSize)
 获取或设置对象的扩展属性值
void Unload ()
 释放对象的图像数据,相当于调用UnloadImage()、UnloadInternalDC();
void UnloadImage ()
 释放已加载图像的IImage相关对象
void UnloadInternalDC ()
 释放内置的图像DC
virtual ~ImagingHelper (void)

静态公有成员

static void ClearCachedImages ()
 删除并释放所有缓冲的图像
static void DrawImage (HDC hdcDst, __in RECT *prcDst, HINSTANCE hInst, LPCWSTR lpType, LPCWSTR lpName, bool bStretch=false)
 绘制某个图像文件
static void DrawImage (HDC hdcDst, __in RECT *prcDst, LPCWSTR filename, bool bStretch=false, bool bStretchScale=false)
 绘制某个图像文件
static ImagingHelperGetImageObject (HINSTANCE hInst, INT nResID, bool bUseAlpha=true)
 [此函数只供系统内部使用,第三方开发者请勿使用此函数!]load an image and return the loaded image,the loaded image is cached.
static IImagingFactory * GetImagingFactory ()
 创建并获得IImagingFactory接口指针
static void UnLoadImagingFactory ()

详细描述

Imaging COM 接口的封装.


构造及析构函数文档

ImagingHelper::ImagingHelper ( void   ) 
virtual ImagingHelper::~ImagingHelper ( void   )  [virtual]

成员函数文档

bool ImagingHelper::AdjustBrightness ( float  fBrightness  ) 

调节图像亮度 (使用的是IImage的亮度调节功能,只当加载图像的IImage对象没被释放才能使用)

BOOL ImagingHelper::AttachBitmap ( HBITMAP  hBmpSrc,
bool  isAlpha,
bool  deleteBmpSrcOnDestruct = true 
)

使用现有位图作为对象内的图像

使用现有位图作为对象内的图像.

参数:
hBmpSrc 源位图
isAlpha 源位图是否带透明通道的位图
deleteBmpSrcOnDestruct 指明在对象析构时是否删除hBmpSrc位图
return Attach操作是否成功
static void ImagingHelper::ClearCachedImages (  )  [static]

删除并释放所有缓冲的图像

HBITMAP ImagingHelper::CreateBitmap ( __in RECT *  prcSrc = 0,
bool  bUseAlpha = true 
)
void ImagingHelper::Draw ( __in HDC  hdcDst,
__in RECT *  prcDst,
bool  bStretch = false,
bool  bStretchScale = false 
)

绘制已成功加载的图像

参数:
hdcDst 目的DC
prcDst 目的矩形
bStretch 是否拉伸
bStretchScale 是否按比例拉伸
void ImagingHelper::DrawGif ( HDC  hdcDst,
RECT *  prcDst,
bool  bStretch = false,
bool  bStretchScale = false 
)
static void ImagingHelper::DrawImage ( HDC  hdcDst,
__in RECT *  prcDst,
HINSTANCE  hInst,
LPCWSTR  lpType,
LPCWSTR  lpName,
bool  bStretch = false 
) [static]

绘制某个图像文件

参数:
hdcDst 目的DC
prcDst 目的矩形
hInst 图像资源所在的资源模块句柄
lpType 图像资源所在的资源类型
lpName 图像资源的资源名称
bStretch 是否拉伸
static void ImagingHelper::DrawImage ( HDC  hdcDst,
__in RECT *  prcDst,
LPCWSTR  filename,
bool  bStretch = false,
bool  bStretchScale = false 
) [static]

绘制某个图像文件

参数:
hdcDst 目的DC
prcDst 目的矩形
filename 图像文件的路径
bStretch 是否拉伸
bStretchScale 是否按比例拉伸
WORD ImagingHelper::GetCurrentGifDelay (  ) 
WORD ImagingHelper::GetCurrentGifFrame (  ) 
MZFC_INLINE HDC ImagingHelper::GetDC (  ) 

获得内置DC

BOOL ImagingHelper::GetExtendedProperty_ImagingHelper ( int  nPropertyType,
void *  pValue,
int  nBufSize 
)

获取或设置对象的扩展属性值

参数:
nPropertyType 要获取或设置的属性类型
pValue 要获取或设置的属性值的指针
nBufSize pValue所指向的变量的size大小(单位: 字节)
返回:
操作是否成功
IImage* ImagingHelper::GetIIMage (  ) 

获得图像的IImage指针

MZFC_INLINE int ImagingHelper::GetImageHeight (  ) 

获得图像的高

static ImagingHelper* ImagingHelper::GetImageObject ( HINSTANCE  hInst,
INT  nResID,
bool  bUseAlpha = true 
) [static]

[此函数只供系统内部使用,第三方开发者请勿使用此函数!]load an image and return the loaded image,the loaded image is cached.

参数:
hInst 资源模块句柄
nResID 图像的资源ID
bUseAlpha 是否使用图像中的alpha通道.
返回:
加载了图像的ImagingHelper对象指针.
前置条件:
您不必手动去delete返回的对象指针,它们在程序退出时会被删除释放. ClearCachedImages() 可以删除所有缓冲的图像.
资源类型必须为 RCDATA
参见:
ClearCachedImages()
MZFC_INLINE int ImagingHelper::GetImageWidth (  ) 

获得图像的宽

static IImagingFactory* ImagingHelper::GetImagingFactory (  )  [static]

创建并获得IImagingFactory接口指针

bool ImagingHelper::IsGif (  ) 
MZFC_INLINE bool ImagingHelper::IsImageAlpha (  ) 

图像中是否带alpha通道

MZFC_INLINE bool ImagingHelper::IsLoadedToDC (  ) 

图像是否已加载到内置DC

BOOL ImagingHelper::LoadGif ( LPCWSTR  filename,
bool  bCopyToInternalDC,
bool  bUnloadAfterCopy 
)
BOOL ImagingHelper::LoadImage ( LPCWSTR  filename,
bool  bCopyToInternalDC,
bool  bUnloadAfterCopy,
bool  bUseAlpha = true 
)

从文件加载图像

参见:
LoadImageFromRes.
virtual BOOL ImagingHelper::LoadImageFromBuffer ( LPVOID  pBuffer,
DWORD  dwSize,
bool  bCopyToInternalDC,
bool  bUnloadAfterCopy,
bool  bUseAlpha = true 
) [virtual]

从buffer加载图像

参数:
pBuffer 图像数据的buffer
dwSize pBuffer的大小,单位为byte
bCopyToInternalDC 是否把图像复制到内置的内存DC
bUnloadAfterCopy 如果 bCopyToInternalDC 为 true, 加载完之后是否释放对应的IImage COM 对象.
bUseAlpha 是否使用图像中的alpha通道.
virtual BOOL ImagingHelper::LoadImageFromRes ( HINSTANCE  hInst,
LPCWSTR  lpType,
LPCWSTR  lpName,
bool  bCopyToInternalDC,
bool  bUnloadAfterCopy,
bool  bUseAlpha = true 
) [virtual]

从资源模块加载图像

参数:
hInst 资源模块句柄
hInst 图像资源所在的资源模块句柄
lpType 图像资源所在的资源类型,如 RT_RCDATA, RT_BITMAP 等
lpName 图像资源的资源名称
bCopyToInternalDC 是否把图像复制到内置的内存DC
bUnloadAfterCopy 如果 bCopyToInternalDC 为 true, 加载完之后是否释放对应的IImage COM 对象.
bUseAlpha 是否使用图像中的alpha通道.
BOOL ImagingHelper::LoadToInternalDC ( bool  bUseAlpha  ) 

把对象中的IImage图像加载到内置DC中

ImagingHelper::operator HDC (  )  const

获得内置DC

void ImagingHelper::SetCurrentGifFrame ( WORD  curFrame  ) 
BOOL ImagingHelper::SetExtendedProperty_ImagingHelper ( int  nPropertyType,
void *  pValue,
int  nBufSize 
)

获取或设置对象的扩展属性值

参数:
nPropertyType 要获取或设置的属性类型
pValue 要设置的属性值的指针
nBufSize pValue所指向的变量的size大小(单位: 字节)
返回:
操作是否成功
void ImagingHelper::Unload (  ) 

释放对象的图像数据,相当于调用UnloadImage()、UnloadInternalDC();

void ImagingHelper::UnloadImage (  ) 

释放已加载图像的IImage相关对象

static void ImagingHelper::UnLoadImagingFactory (  )  [static]
void ImagingHelper::UnloadInternalDC (  ) 

释放内置的图像DC


该类的文档由以下文件生成:

Generated at Tue Feb 9 15:09:58 2010 for Meizu M8 SDK Documentation by  doxygen 1.6.1