⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jbmp.h

📁 BREW BREWwinz Application development APIs
💻 H
📖 第 1 页 / 共 3 页
字号:
		拳搁俊 免仿窍扁 困秦辑绰 函券窍咯 JBMP狼 lpData阑 IDISPLAY_BitBlt 茄促. 
		弊府绊 拳搁俊 免仿父 矫虐绰 版快俊绰 bDeleteSource甫 TRUE 肺 窍咯 皋葛府 荤侩樊阑 临牢促. 
		父距 厚飘甘阑 炼累(措莫, 雀傈, 汗力, BitBltToBMP, TransparentBltToBMP 殿)窍芭唱 
		迫饭飘甫 利侩 矫虐扁 困秦辑绰 bDeleteSource甫 FALSE 肺 窍咯 家胶(lpBMPSrc)甫 
		昏力(馆券)窍瘤 臼档废 茄促. 

        * CONVERTBMP甫 荐青窍绊 厚飘甘狼 盔夯(家胶)阑 拌加 蜡瘤(焊包, lpBMPSrc)窍妨搁
        ConvertBMP 窃荐甫 捞侩秦具 钦聪促. 促弗 窃荐俊辑 bConvert 牢磊甫 TRUE肺 窍咯
        函券窍绰 版快 厚飘甘狼 家胶甫 昏力 钦聪促.
************************************************************************************/
void ConvertBMP(
               LPJBMP	lpBMP,			// 积己等 JBMP狼 器牢磐
			   BOOL		bDeleteSource	// 函券 饶 家胶 lpBMPSrc甫 昏力(秦力) 且 瘤狼 BOOL 敲贰弊
               );

/************************************************************************************
♂ FreeNativeImage

扁  瓷: CONVERTBMP肺 窜富俊 免仿且 荐 乐档废 函券等 捞固瘤(Native Image)甫 昏力窍咯
        荤侩茄 皋葛府甫 馆券 钦聪促.
府畔蔼: 绝澜.
林  狼:   
  函券等 捞固瘤(Native Image)绰 窜富厘摹俊 蝶扼 BMP 家胶狼 2硅 捞惑 皋葛府甫
  荤侩钦聪促(抗肺 16厚飘 拿矾甫 荤侩窍绰 版快 8厚飘 拿矾狼 2硅 沥档 凳).
  BREW俊辑 厚飘甘阑 免仿窍扁 困秦 困客 鞍捞 Native Image甫 父甸绢 拳搁俊 免仿窍档废
  登绢 乐嚼聪促.
  父距 厚飘甘阑 拳搁俊 免仿窍瘤 臼绊 厚飘甘俊 BitBlt 窍绰 版快俊绰 CONVERTBMP甫 且
  鞘夸啊 绝嚼聪促. 弊府绊 厚飘甘阑 概锅 CONVERTBMP甫 荐青窍绰 版快俊绰 拳搁俊
  免仿(IDISPLAY_BitBlt)茄 饶 Native Image甫 昏力窍咯 老矫利捞唱付 荤侩 皋葛府甫 临老 荐 乐嚼聪促.
  父距 拳搁俊 免仿父 窍绰 版快俊绰 厚飘甘 家胶绰 鞘夸 绝栏聪 FreeData 窃荐肺 
  家胶甫 昏力 窍技夸.

  FreeData(&lpBMP->lpBMPSrc);

************************************************************************************/
void FreeNativeImage(
					 LPJBMP lpBMP
					 );

/************************************************************************************
♂ FreeBMP

扁  瓷: 积己等 JBMP 捞固瘤甫 昏力窍咯 荤侩茄 皋葛府甫 馆券 钦聪促.
府畔蔼: 绝澜.
林  狼: CreateBMP 殿殿狼 窃荐肺 积己等 JBMP绰 荤侩捞 场抄 饶 
		馆靛矫 FreeBMP肺 荤侩茄 皋葛府甫 馆券 秦具 茄促. 
		FreeBMP 窃荐绰 郴何利栏肺 ppBMP啊 NULL牢瘤 犬牢窍绊 
		肚 FREE 饶俊 ppBMP甫 NULL肺 秦林扁 锭巩俊 NULL牢瘤 厚背窍绰 巴苞 
		皋葛府 秦力 饶 NULL肺 秦林绰 巴阑 积帆秦档 等促.
************************************************************************************/
void FreeBMP(
             LPJBMP* lppBMP  // 积己等 JBMP狼 器牢磐狼 器牢磐(曼炼 &)
             );


/************************************************************************************
♂ LoadPalette

扁  瓷: BREW 府家胶 颇老(BAR)俊辑 JBMPTool 肺 拘绵等 迫饭飘甫 阂矾 可聪促.
府畔蔼: 己傍窍搁 TRUE, 角菩窍搁 FALSE甫 府畔.
林  狼: Load 等 lppOut 迫饭飘绰 荤侩 饶 馆靛矫 FreePalette肺 皋葛府甫 秦力 矫难 拎具 茄促.
************************************************************************************/
DWORD LoadPalette(
                  void*			 lpBLZ,				// BlueWinz 牢磐其捞胶 勤甸 器牢磐
                  const char*    szResFileName,     // 府家胶 颇老疙
                  const uint16   unPaletteResID,    // 府家胶 ID
                  byte**         lppOut             // 肺靛 等 迫饭飘 林家(馆券)
                  );

/************************************************************************************
♂ FreePalette

扁  瓷: 肺靛 等 迫饭飘甫 秦力窃.
府畔蔼: 绝澜.
林  狼: LoadPalette 茄 迫饭飘甫 力芭 窍咯 荤侩茄 皋葛府甫 馆券茄促.
************************************************************************************/
void FreePalette(
                byte**    lppPalette   // 秦力且 迫饭飘 林家. 馆券登搁 NULL肺 檬扁拳 凳.
               );

/************************************************************************************
♂ GetPaletteIndex

扁  瓷: 秦寸 迫饭飘俊辑 RGB 蔼狼 迫饭飘 牢郸胶 蔼阑 茫绰促.
府畔蔼: 茫栏搁 TRUE 弊犯瘤 臼栏搁 FALSE. 
        馆券 蔼捞 TRUE捞搁 pOut俊 弊 搬苞蔼(迫饭飘 牢郸胶)阑 掘绰促.
林  狼: 
************************************************************************************/
BOOL GetPaletteIndex(
					 byte* lpPalette,
					 byte byRed,	// 茫阑 祸(Red)
					 byte byGreen,	// 茫阑 祸(Green)
					 byte byBlue,	// 茫阑 祸(Blue)
					 byte* pOut		// 茫篮 牢郸胶 蔼
					 );

// 2004-01-07
BOOL SetPaletteToBMP(
					 LPJBMP lpBMP, 
					 byte* lpPalette, 
					 uint16 unStart, 
					 uint16 unCount
					 );

// 2004-03-06
//BOOL SetAlphaBlendingToBMP(LPJBMP lpBMP, byte* lpPalette, byte blRed, byte blGreen, byte blBlue, byte byAlpha);
BOOL SetAlphaBlendingToBMP(
						   LPJBMP lpBMP, 
						   byte* lpPalette, 
						   byte byRed, 
						   byte byGreen, 
						   byte byBlue, 
						   byte byAlpha, 
						   BOOL bTransparent
						   );

// 2004-03-07
// lpSrcPalette 盔夯 迫饭飘, lpDestPalette 汗荤且 镑
// 父距 lpDestPalette啊 NULL捞搁 lpSrcPalette俊 利侩茄促.
// unColorNum绰 拿矾荐肺 8厚飘捞搁 256, 4厚飘捞搁 64捞促. 茄侨伎寸 4官捞飘(RGBA).
BOOL SetAlphaBlendingToPalette(
							   byte* lpSrcPalette, 
							   byte* OUT lpDestPalette, 
							   byte byRed, 
							   byte byGreen, 
							   byte byBlue, 
							   byte byAlpha, 
							   uint16 unColorNum, 
							   BOOL bTransparent
							   );

// 2004-02-09
void ChangePaletteColor(byte* lpPalette, 
						byte byPalIndex, 
						byte byRed, 
						byte byGreen, 
						byte byBlue, 
						byte byLength
						);

/************************************************************************************
♂ CreateBMPFromBMP

扁  瓷: JBMP 捞固瘤狼 老何甫 汗荤窍咯 货肺款 JBMP甫 积己 钦聪促.
府畔蔼: 己傍窍搁 积己茄 JBMP狼 器牢磐甫 府畔, 角菩窍搁 NULL阑 府畔.
林  狼: 盔夯 JBMP 捞固瘤绰 厚飘甘 家胶(lpBMPSrc)啊 粮犁(NULL捞 酒聪搁)秦具 茄促.
		积己等 JBMP绰 Convert 啊 登瘤 臼篮 厚飘甘捞扁 锭巩俊 
		拳搁俊 免仿窍扁 困秦辑绰 馆靛矫 ConvertBMP肺 Convert 矫难具 茄促. 
		荤侩捞 场抄 饶 馆靛矫 FreeBMP肺 荤侩茄 皋葛府甫 馆券 秦具 茄促.
************************************************************************************/
LPJBMP CreateBMPFromBMP(LPJBMP	lpSrcBMP,		// 盔夯 厚飘甘 JBMP
						 uint16 unPosX,			// 盔夯 捞固瘤俊辑 矫累 困摹
						 uint16 unPosY,			// 盔夯 捞固瘤俊辑 矫累 困摹
						 uint16 unCopyWidth,	// 盔夯 捞固瘤俊辑 汗荤且 承捞
						 uint16 unCopyHeight);	// 盔夯 捞固瘤俊辑 汗荤且 臭捞

BOOL GetPaletteIndexExt(
					   byte* lpPalette,			// 迫饭飘 牢郸胶甫 掘绊磊 窍绰 迫饭飘抛捞喉
					   byte byRed,				// Red 蔼
					   byte byGreen,			// Green 蔼
					   byte byBlue,				// Blue 蔼
					   uint16 unColorNumber,	// 8厚飘 厚飘甘捞搁 256, 4厚飘 厚飘甘捞搁 16
												// GetPaletteIndex客 GetPaletteIndex4Bit 窃荐客 悼老
                       byte bySameLevel,        // 辟荤摹 蔼, 0捞搁 100% 老摹, 3捞搁 (x-3) ~ (x) ~ (x+3)
					   byte* pOut);				// 迫饭飘 牢郸胶甫 掘阑 函荐

BOOL GetPaletteIndex4Bit(
						 byte* lpPalette, 
						 byte byRed, byte 
						 byGreen, 
						 byte byBlue, 
						 byte* pOut);


/************************************************************************************
♂ Convert4BitTo8Bit

扁  瓷: 4bit 厚飘甘 JBMP 捞固瘤甫 8bit 厚飘甘 JBMP 捞固瘤肺 函券 钦聪促.
		BitBltToBMP 窃荐客 TransparentBltToBMP 窃荐绰 8bit 厚飘甘父 瘤盔窍扁 锭巩俊 
		捞 窃荐甫 捞侩窍妨搁 4bit 厚飘甘篮 8bit 厚飘甘栏肺 函券秦 拎具 钦聪促.
府畔蔼: 己傍窍搁 函券等 8bit 厚飘甘 JBMP狼 器牢磐甫 馆券窍哥 角菩窍搁 NULL阑 馆券.
林  狼: 盔夯 JBMP 捞固瘤绰 厚飘甘 家胶(lpBMPSrc)啊 粮犁(NULL捞 酒聪搁)秦具 茄促.
		函券等 8bit 厚飘甘 JBMP篮 Convert 啊 登瘤 臼篮 厚飘甘捞扁 锭巩俊 
		拳搁俊 免仿窍扁 困秦辑绰 馆靛矫 ConvertBMP肺 Convert 矫难具 茄促. 
		荤侩捞 场抄 饶 馆靛矫 FreeBMP肺 皋葛府甫 秦力 秦具 茄促. 
		bSrcDelete啊 TRUE捞搁 盔夯 4bit 厚飘甘 JBMP绰 FreeBMP 等促
************************************************************************************/
LPJBMP Convert4BitTo8Bit(
						 LPJBMP* lpp4Bitmap,	// 盔夯 4bit 厚飘甘(馆靛矫 4bit 厚飘甘捞绢具 茄促).
						 byte* lpPalette,		// 利侩且 迫饭飘肺 8bit 厚飘甘狼 迫饭飘(256祸, 1024官捞飘)咯具 茄促, 
												// NULL捞搁 家胶 厚飘甘牢 4厚飘 厚飘甘狼 迫饭飘(16祸, 64官捞飘)甫
												// 弊措肺 利侩茄促.
						 byte bySameLevel,		// 辟荤摹 蔼, 0捞搁 100% 老摹, 3捞搁 (x-3) ~ (x) ~ (x+3)
						 BOOL bSrcDelete		// TRUE捞搁 函券 饶 盔夯阑 昏力茄促.
						 );

// GetJDataFromMEM 窃荐唱 LoadJData 窃荐肺 掘篮 盔夯阑 昏力且 锭 荤侩茄促.
// 郴何利栏肺 FREE 窃.
void FreeData(
			  byte** lppData
			  );

BOOL SetGrayScaleToBMP(
					   LPJBMP lpBMP,		// 函版且 厚飘甘 
					   byte* lpPalette,		// 利侩且 迫饭飘(NULL阑 林搁 盔夯 厚飘甘狼 迫饭飘甫 荤侩茄促)
					   byte byGrayLevel,	// 弊饭捞 饭骇 100捞搁 扁夯 弊 捞窍 蔼捞搁 绢滴框
					   BOOL bTransparent	// TRUE捞搁 RGB(255, 0, 255) 捧疙祸篮 公矫(溜 捧疙祸篮 函版窍瘤 臼澜)
					   );

BOOL SetGrayScaleToPalette(
						   byte* lpSrcPalette, 
						   byte* OUT lpDestPalette, 
						   byte byGrayLevel, 
						   uint16 unColorNum, // 4厚飘 厚飘甘捞搁 16, 8厚飘 厚飘甘捞搁 256
						   BOOL bTransparent
						   );

/************************************************************************************
♂ CreateStretchBMP

扁  瓷: JBMP 捞固瘤甫 烙狼狼 农扁肺 疵府芭唱(犬措) 临老(绵家) 荐 乐嚼聪促. 
		疵副 锭唱 绵家且 锭 啊肺, 技肺 厚啦阑 蜡瘤窍搁 犬措, 绵家狼 瓤苞甫 杭 荐 乐嚼聪促.
府畔蔼: 己傍窍搁 积己茄 Stretch JBMP狼 器牢磐甫 府畔 窍哥 角菩窍搁 NULL阑 府畔.
林  狼: 盔夯 JBMP 捞固瘤绰 厚飘甘 家胶(lpBMPSrc)啊 粮犁(NULL捞 酒聪搁)秦具 茄促.
		积己等 JBMP绰 Convert 啊 登瘤 臼篮 厚飘甘捞扁 锭巩俊 
		拳搁俊 免仿窍扁 困秦辑绰 馆靛矫 ConvertBMP肺 Convert 矫难具 茄促. 
		荤侩捞 场抄 饶 馆靛矫 FreeBMP肺 皋葛府甫 秦力 秦具 茄促. 

* 啊肺 技肺 厚啦 傍侥(犬措)
width : height = newWidth : newHeight 傍侥栏肺 拌魂(Zoom01 抗力 曼炼)
************************************************************************************/
LPJBMP CreateStretchBMP(
						LPJBMP lpSrcBMP,	// 盔夯 厚飘甘
						uint16 unSrcPosX,	// 矫累且 困摹
						uint16 unSrcPosY,	// 矫累且 困摹
						uint16 unWitdh,		// 汗荤且 承捞
						uint16 unHeight,	// 汗荤且 臭捞
						uint16 unNewWidth,	// 货肺 积己且 农扁(犬措 肚绰 绵家)
						uint16 unNewHeight	// 货肺 积己且 农扁(犬措 肚绰 绵家
						);

BOOL SetInvertColorToPalette(byte* lpSrcPalette, byte* OUT lpDestPalette, uint16 unColorNum, BOOL bTransparent);
BOOL SetInvertColorToBMP(LPJBMP lpBMP, byte* lpPalette, BOOL bTransparent);

BOOL SetFadeToPalette(byte* lpSrcPalette, byte* OUT lpDestPalette, byte byFadeLevel, uint16 unColorNum, BOOL bTransparent);
BOOL SetFadeToBMP(LPJBMP lpBMP, byte* lpPalette, byte byFadeLevel, BOOL bTransparent);


/************************************************************************************
促澜 窃荐甸篮 厚飘甘 盔夯 家胶俊辑 利侩窍绰 窃荐涝聪促.
厚飘甘捞 窍氢侥栏肺 历厘登扁 锭巩俊 y谅钎绰 弊俊 嘎霸 利侩窍寂具 钦聪促.
************************************************************************************/
byte GetPixel(byte* lpImage, uint16 unPitch, uint16 unX, uint16 unY);
void SetPixel(byte* lpImage, uint16 unPitch, uint16 unX, uint16 unY, byte byPixel);
byte* BMPRotate90(byte* lpSrc, dword dwOffset, uint16 unBitCount, uint16 unWidth, uint16 unHeight);
byte* BMPRotate180(byte* lpSrc, dword dwOffset, uint16 unBitCount, uint16 unWidth, uint16 unHeight);
byte* BMPRotate270(byte* lpSrc, dword dwOffset, uint16 unBitCount, uint16 unWidth, uint16 unHeight);

// not use yet!
#if 0
byte* BMPRotate45(byte* lpSrc, dword dwOffset, uint16 unBitCount, uint16 unSrcWidth, uint16 unSrcHeight,
				  uint16* punDestWidth, uint16* punDestHeight, double dAngle, byte backColor); //, BOOL bMidImage);
#endif

//int GetImageDataOffset(LPJBMP lpBlankBMP, int nCheckCount, int nMore);

#ifdef __cplusplus
}
#endif

#endif // !defined(AFX_JBMP_H__9F0BCB31_A503_4979_96B5_158CD5910225__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -