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

📄 j_convertcolor.c

📁 基于μCGUI的嵌入式图形界面设计
💻 C
字号:
/******************************************************************************
									J_GUI
						The JJJ's Graphics Interface Library
								
					 	COPYRIGHT (c) JJJSTUDIO, 2006 BY JJJ.
                       		--  ALL RIGHTS RESERVED  --
  
   	Filename:	J_ConvertColor.c
   	Author	:   Jianjun Jiang 	
   	Created	:   2006/02/3
   	Website	:	http://www.jjjbbs.com
   	Modified:	NO
   	Revision: 	1.00
   	Readme	:	J_GUI Convert Color C File
******************************************************************************/

UINT16 J_Color2Index_565(TCOLOR Color)
{
	UINT8 r,g,b;
	b = ( Color>>(0+3) ) & 0x1f;
   	g = ( Color>>(8+2) ) & 0x3f;
   	r = ( Color>>(16+3)) & 0x1f;
	return( (r<<11) + (g<<5) + b );	
}
TCOLOR J_Index2Color_565(UINT16 Index)
{
	UINT8 r,g,b;
	b = (Index>>0)  & 0x1f;
   	g = (Index>>5)  & 0x3f;
   	r = (Index>>11) & 0x1f;
   	r = r * 255 / 31;
   	g = g * 255 / 63;
   	b = b * 255 / 31;
	return( (r<<16) + (g<<8) + (b<<0) );	
}

UINT16 J_Color2Index_555(TCOLOR Color)
{
	UINT8 r,g,b;
	b = ( Color>>(0+3) ) & 0x1f;
   	g = ( Color>>(8+3) ) & 0x3f;
   	r = ( Color>>(16+3)) & 0x1f;
	return( (r<<10) + (g<<5) + b );	   
}
TCOLOR J_Index2Color_555(UINT16 Index)
{
	UINT8 r,g,b;
	b = (Index>>0)  & 0x1f;
   	g = (Index>>5)  & 0x1f;
   	r = (Index>>10) & 0x1f;
   	r = r * 255 / 31;
   	g = g * 255 / 31;
   	b = b * 255 / 31;
	return( (r<<16) + (g<<8) + (b<<0) );	
}

UINT16 J_Color2Index_444(TCOLOR Color)
{
   	UINT8 r,g,b;
	b = ( Color>>(0+4) ) & 0x0f;
   	g = ( Color>>(8+4) ) & 0x0f;
   	r = ( Color>>(16+4)) & 0x0f;
	return( (r<<8) + (g<<4) + b );	   
}
TCOLOR J_Index2Color_444(UINT16 Index)
{
   	UINT8 r,g,b;
	b = (Index>>0) & 0x0f;
   	g = (Index>>4) & 0x0f;
   	r = (Index>>8) & 0x0f;
   	r = r * 17;
   	g = g * 17;
   	b = b * 17;
	return( (r<<16) + (g<<8) + (b<<0) );  
}

UINT8 J_Color2Index_332(TCOLOR Color)
{
	UINT8 r,g,b;
   	b = (Color>>0)  & 0xff;
   	g = (Color>>8)  & 0xff;
   	r = (Color>>16) & 0xff;
   	r = (r * 7 + 127) / 255;
   	g = (g * 7 + 127) / 255;
   	b = (b + 42) / 85;
   
   return( (r<<5) + (g << 2) + (b<<0) );
   
}
TCOLOR J_Index2Color_332(UINT8 Index)
{
	UINT8 r,g,b;
	r = (Index >> 5) * 255 / 7;
   	g = ((Index >> 3) & 7) * 255 / 7;
   	b = (Index & 3) * 85;
	return( (r<<16) + (g << 8) + (b<<0) );
}

UINT8 J_Color2Index_222(TCOLOR Color)
{
	UINT8 r,g,b;
	b = (((Color>>0) &255)+0x2a)/0x55;
   	g = (((Color>>8) &255)+0x2a)/0x55;
   	r = (((Color>>16)&255)+0x2a)/0x55;
   	return( (r<<4) + (g<<2) + (b<<0) );
}
TCOLOR J_Index2Color_222(UINT8 Index)
{
	UINT8 r,g,b;
	b = ((Index>>0)&3) * 0x55;
   	g = ((Index>>2)&3) * 0x55;
   	r = ((Index>>4)&3) * 0x55;
    return( (r<<16) + (g<<8) + (b<<0) );
}

UINT8 J_Color2Index_111(TCOLOR Color)
{
	UINT8 r,g,b;
	b = (Color>>(0+7))  &1;
   	g = (Color>>(8+7))  &1;
   	r = (Color>>(16+7)) &1;
    return( (r<<2) + (g<<1) + (b<<0) );
}
TCOLOR J_Index2Color_111(UINT8 Index)
{
	UINT8 r,g,b;
	b = ((Index>>0)&1) * 0xff;
   	g = ((Index>>1)&1) * 0xff;
   	r = ((Index>>2)&1) * 0xff;
   	return( (r<<16) + (g<<8) + (b<<0) );
}

⌨️ 快捷键说明

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