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

📄 cfb8bit.h

📁 远程桌面连接工具
💻 H
📖 第 1 页 / 共 4 页
字号:
	    ((CARD16 *) (dst))[SinglePixel6] = (pixel);	\	    break;			\	case 7:				\	    ((CARD32 *) (dst))[DoublePixel2] = (pixel);	\	    ((CARD16 *) (dst))[SinglePixel6] = (pixel);	\	    break;			\	case 8:				\	    ((CARD16 *) (dst))[SinglePixel7] = (pixel);	\	    break;			\	case 9:				\	    ((CARD16 *) (dst))[SinglePixel4] = (pixel);	\	    ((CARD16 *) (dst))[SinglePixel7] = (pixel);	\	    break;			\	case 10:			\	    ((CARD16 *) (dst))[SinglePixel5] = (pixel);	\	    ((CARD16 *) (dst))[SinglePixel7] = (pixel);	\	    break;			\	case 11:			\	    ((CARD32 *) (dst))[DoublePixel2] = (pixel);	\	    ((CARD16 *) (dst))[SinglePixel7] = (pixel);	\	    break;			\	case 12:			\	    ((CARD32 *) (dst))[DoublePixel3] = (pixel);	\	    break;			\	case 13:			\	    ((CARD16 *) (dst))[SinglePixel4] = (pixel);	\	    ((CARD32 *) (dst))[DoublePixel3] = (pixel);	\	    break;			\	case 14:			\	    ((CARD16 *) (dst))[SinglePixel5] = (pixel);	\	    ((CARD32 *) (dst))[DoublePixel3] = (pixel);	\	    break;			\	case 15:			\	    ((CARD32 *) (dst))[DoublePixel2] = (pixel);	\	    ((CARD32 *) (dst))[DoublePixel3] = (pixel);	\	    break;			\	}				\    }#endif /* PGSZ */#if PGSZ == 32#define SwitchBitGroup(dst,pixel,bits) { \	switch (bits) { \	case 0: \       	    break; \	case 1: \	    SwitchBitsLoop (((CARD16 *) (dst))[SinglePixel0] = (pixel);) \	    break; \	case 2: \	    SwitchBitsLoop (((CARD16 *) (dst))[SinglePixel1] = (pixel);) \	    break; \	case 3: \	    SwitchBitsLoop (((CARD32 *) (dst))[DoublePixel0] = (pixel);) \	    break; \	case 4: \	    SwitchBitsLoop (((CARD16 *) (dst))[SinglePixel2] = (pixel);) \	    break; \	case 5: \	    SwitchBitsLoop (((CARD16 *) (dst))[SinglePixel0] = (pixel); \		     ((CARD16 *) (dst))[SinglePixel2] = (pixel);) \	    break; \	case 6: \	    SwitchBitsLoop (((CARD16 *) (dst))[SinglePixel1] = (pixel); \		     ((CARD16 *) (dst))[SinglePixel2] = (pixel);) \	    break; \	case 7: \	    SwitchBitsLoop (((CARD32 *) (dst))[DoublePixel0] = (pixel); \		     ((CARD16 *) (dst))[SinglePixel2] = (pixel);) \	    break; \	case 8: \	    SwitchBitsLoop (((CARD16 *) (dst))[SinglePixel3] = (pixel);) \	    break; \	case 9: \	    SwitchBitsLoop (((CARD16 *) (dst))[SinglePixel0] = (pixel); \		     ((CARD16 *) (dst))[SinglePixel3] = (pixel);) \	    break; \	case 10: \	    SwitchBitsLoop (((CARD16 *) (dst))[SinglePixel1] = (pixel); \		     ((CARD16 *) (dst))[SinglePixel3] = (pixel);) \	    break; \	case 11: \	    SwitchBitsLoop (((CARD32 *) (dst))[DoublePixel0] = (pixel); \		     ((CARD16 *) (dst))[SinglePixel3] = (pixel);) \	    break; \	case 12: \	    SwitchBitsLoop (((CARD32 *) (dst))[DoublePixel1] = (pixel);) \	    break; \	case 13: \	    SwitchBitsLoop (((CARD16 *) (dst))[SinglePixel0] = (pixel); \		     ((CARD32 *) (dst))[DoublePixel1] = (pixel);) \	    break; \	case 14: \	    SwitchBitsLoop (((CARD16 *) (dst))[SinglePixel1] = (pixel); \		     ((CARD32 *) (dst))[DoublePixel1] = (pixel);) \	    break; \	case 15: \	    SwitchBitsLoop (((CARD32 *) (dst))[DoublePixel0] = (pixel); \			    ((CARD32 *) (dst))[DoublePixel1] = (pixel);) \	    break; \	} \}#else /* PGSZ == 64 */#define SwitchBitGroup(dst,pixel,bits) { \	cfb cannot hack 64-bit SwitchBitGroup psz=PSZ#endif /* PGSZ */#endif /* PSZ == 16 */#if PSZ == 24/* 32 000011112222*//* 24 000111222333*//* 16 001122334455*//*  8 0123456789AB*/#if PGSZ == 32#define WriteBitGroup(dst,pixel,bits) \	{ \	register CARD32 reg_pixel = (pixel); \	switch (bits) {			\	case 0:				\	    break;			\	case 1:				\	    ((CARD16 *) (dst))[DoublePixel0] = reg_pixel;	\	    ((CARD8 *) (dst))[SinglePixel2] = ((reg_pixel>>16)&0xFF);	\	    break;			\	case 2:				\	    ((CARD8 *) (dst))[SinglePixel3] = reg_pixel&0xFF;	\	    ((CARD16 *) (dst))[DoublePixel2] = (reg_pixel>>8)&0xFFFF;	\	    break;			\	case 3:				\	    ((CARD8 *) (dst))[SinglePixel3] = reg_pixel & 0xFF;	\	    ((CARD16 *) (dst))[DoublePixel0] = reg_pixel;	\	    ((CARD16 *) (dst))[DoublePixel2] = (reg_pixel>>8)&0xFFFF;	\	    ((CARD8 *) (dst))[SinglePixel2] = (reg_pixel>>16&0xFF);	\	    break;			\	case 4:				\	    ((CARD16 *) (dst))[DoublePixel3] = reg_pixel;	\	    ((CARD8 *) (dst))[SinglePixel8] = (reg_pixel>>16)&0xFF; \	    break;			\	case 5:				\	    ((CARD16 *) (dst))[DoublePixel0] = \	    ((CARD16 *) (dst))[DoublePixel3] = reg_pixel;	\	    reg_pixel >>= 16;	\	    ((CARD8 *) (dst))[SinglePixel2] = \	    ((CARD8 *) (dst))[SinglePixel8] = reg_pixel&0xFF; \	    break;			\	case 6:				\	    ((CARD8 *) (dst))[SinglePixel3] = reg_pixel;	\	    ((CARD16 *) (dst))[DoublePixel3] = reg_pixel;	\	    reg_pixel >>= 8;	\	    ((CARD16 *) (dst))[DoublePixel2] = reg_pixel;	\	    reg_pixel >>= 8;	\	    ((CARD8 *) (dst))[SinglePixel8] = reg_pixel&0xFF; \	    break;			\	case 7:				\	    ((CARD16 *) (dst))[DoublePixel0] = \	    ((CARD16 *) (dst))[DoublePixel3] = reg_pixel;	\	    ((CARD8 *) (dst))[SinglePixel3] = reg_pixel&0xFF;	\	    reg_pixel >>= 8;	\	    ((CARD16 *) (dst))[DoublePixel2] = reg_pixel;	\	    reg_pixel >>= 8;	\	    ((CARD8 *) (dst))[SinglePixel2] = \	    ((CARD8 *) (dst))[SinglePixel8] = reg_pixel&0xFF; \	    break;			\	case 8:				\	    ((CARD8 *) (dst))[SinglePixel9] = reg_pixel&0xFF;	\	    ((CARD16 *) (dst))[DoublePixel5] = (reg_pixel>>8);	\	    break;			\	case 9:				\	    ((CARD16 *) (dst))[DoublePixel0] = reg_pixel;	\	    ((CARD8 *) (dst))[SinglePixel9] = reg_pixel&0xFF;	\	    reg_pixel >>= 8;	\	    ((CARD16 *) (dst))[DoublePixel5] = reg_pixel;	\	    reg_pixel >>= 8;	\	    ((CARD8 *) (dst))[SinglePixel2] = reg_pixel&0xFF;	\	    break;			\	case 10:			\	    ((CARD8 *) (dst))[SinglePixel3] = \	    ((CARD8 *) (dst))[SinglePixel9] = reg_pixel&0xFF;	\	    reg_pixel >>= 8;	\	    ((CARD16 *) (dst))[DoublePixel2] = \	    ((CARD16 *) (dst))[DoublePixel5] = reg_pixel;	\	    break;			\	case 11:			\	    ((CARD8 *) (dst))[SinglePixel3] = \	    ((CARD8 *) (dst))[SinglePixel9] = reg_pixel;	\	    ((CARD16 *) (dst))[DoublePixel0] = reg_pixel;	\	    reg_pixel >>= 8;	\	    ((CARD16 *) (dst))[DoublePixel2] = \	    ((CARD16 *) (dst))[DoublePixel5] = reg_pixel;	\	    reg_pixel >>= 8;	\	    ((CARD8 *) (dst))[SinglePixel2] = reg_pixel;	\	    break;			\	case 12:			\	    ((CARD16 *) (dst))[DoublePixel3] = reg_pixel;	\	    ((CARD8 *) (dst))[SinglePixel9] = reg_pixel;	\	    reg_pixel >>= 8;	\	    ((CARD16 *) (dst))[DoublePixel5] = reg_pixel;	\	    reg_pixel >>= 8;	\	    ((CARD8 *) (dst))[SinglePixel8] = reg_pixel; \	    break;			\	case 13:			\	    ((CARD16 *) (dst))[DoublePixel0] = \	    ((CARD16 *) (dst))[DoublePixel3] = reg_pixel;	\	    ((CARD8 *) (dst))[SinglePixel9] = reg_pixel;	\	    reg_pixel >>= 8;	\	    ((CARD16 *) (dst))[DoublePixel5] = reg_pixel;	\	    reg_pixel >>= 8;	\	    ((CARD8 *) (dst))[SinglePixel2] = \	    ((CARD8 *) (dst))[SinglePixel8] = reg_pixel; \	    break;			\	case 14:			\	    ((CARD8 *) (dst))[SinglePixel3] = \	    ((CARD8 *) (dst))[SinglePixel9] = reg_pixel;	\	    ((CARD16 *) (dst))[DoublePixel3] = reg_pixel;	\	    reg_pixel >>= 8;	\	    ((CARD16 *) (dst))[DoublePixel2] = \	    ((CARD16 *) (dst))[DoublePixel5] = reg_pixel;	\	    reg_pixel >>= 8;	\	    ((CARD8 *) (dst))[SinglePixel8] = reg_pixel; \	    break;			\	case 15:			\	    ((CARD16 *) (dst))[DoublePixel0] = \	    ((CARD16 *) (dst))[DoublePixel3] = reg_pixel;	\	    ((CARD8 *) (dst))[SinglePixel3] = \	    ((CARD8 *) (dst))[SinglePixel9] = reg_pixel;	\	    reg_pixel >>= 8;	\	    ((CARD16 *) (dst))[DoublePixel2] = \	    ((CARD16 *) (dst))[DoublePixel5] = reg_pixel;	\	    reg_pixel >>= 8;	\	    ((CARD8 *) (dst))[SinglePixel8] = \	    ((CARD8 *) (dst))[SinglePixel2] = reg_pixel;	\	    break;			\	} \      }#else /* PGSZ == 64 */#define WriteBitGroup(dst,pixel,bits) \    if ( bits == 0xff )	 {				   \	((PixelGroup *) (dst))[DoublePixel0] = (pixel);	   \	((PixelGroup *) (dst))[DoublePixel1] = (pixel);	   \	((PixelGroup *) (dst))[DoublePixel2] = (pixel);	   \	((PixelGroup *) (dst))[DoublePixel3] = (pixel);	   \    }							   \    else {						   \	switch (bits & 0x0f) {	 			   \	case 0:				\	    break;			\	case 1:				\	    ((CARD32 *) (dst))[SinglePixel0] = (pixel);	\	    break;			\	case 2:				\	    ((CARD32 *) (dst))[SinglePixel1] = (pixel);	\	    break;			\	case 3:				\	    ((CARD32 *) (dst))[SinglePixel0] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel1] = (pixel);	\	    break;			\	case 4:				\	    ((CARD32 *) (dst))[SinglePixel2] = (pixel);	\	    break;			\	case 5:				\	    ((CARD32 *) (dst))[SinglePixel0] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel2] = (pixel);	\	    break;			\	case 6:				\	    ((CARD32 *) (dst))[SinglePixel1] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel2] = (pixel);	\	    break;			\	case 7:				\	    ((CARD32 *) (dst))[SinglePixel0] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel1] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel2] = (pixel);	\	    break;			\	case 8:				\	    ((CARD32 *) (dst))[SinglePixel3] = (pixel);	\	    break;			\	case 9:				\	    ((CARD32 *) (dst))[SinglePixel0] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel3] = (pixel);	\	    break;			\	case 10:			\	    ((CARD32 *) (dst))[SinglePixel1] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel3] = (pixel);	\	    break;			\	case 11:			\	    ((CARD32 *) (dst))[SinglePixel0] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel1] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel3] = (pixel);	\	    break;			\	case 12:			\	    ((CARD32 *) (dst))[SinglePixel2] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel3] = (pixel);	\	    break;			\	case 13:			\	    ((CARD32 *) (dst))[SinglePixel0] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel2] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel3] = (pixel);	\	    break;			\	case 14:			\	    ((CARD32 *) (dst))[SinglePixel1] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel2] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel3] = (pixel);	\	    break;			\	case 15:			\	    ((CARD32 *) (dst))[SinglePixel0] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel1] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel2] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel3] = (pixel);	\	    break;			\	}				\	switch ((bits & 0xf0) >> 4) {	\	case 0:				\	    break;			\	case 1:				\	    ((CARD32 *) (dst))[SinglePixel4] = (pixel);	\	    break;			\	case 2:				\	    ((CARD32 *) (dst))[SinglePixel5] = (pixel);	\	    break;			\	case 3:				\	    ((CARD32 *) (dst))[SinglePixel4] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel5] = (pixel);	\	    break;			\	case 4:				\	    ((CARD32 *) (dst))[SinglePixel6] = (pixel);	\	    break;			\	case 5:				\	    ((CARD32 *) (dst))[SinglePixel4] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel6] = (pixel);	\	    break;			\	case 6:				\	    ((CARD32 *) (dst))[SinglePixel5] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel6] = (pixel);	\	    break;			\	case 7:				\	    ((CARD32 *) (dst))[SinglePixel4] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel5] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel6] = (pixel);	\	    break;			\	case 8:				\	    ((CARD32 *) (dst))[SinglePixel7] = (pixel);	\	    break;			\	case 9:				\	    ((CARD32 *) (dst))[SinglePixel4] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel7] = (pixel);	\	    break;			\	case 10:			\	    ((CARD32 *) (dst))[SinglePixel5] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel7] = (pixel);	\	    break;			\	case 11:			\	    ((CARD32 *) (dst))[SinglePixel4] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel5] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel7] = (pixel);	\	    break;			\	case 12:			\	    ((CARD32 *) (dst))[SinglePixel6] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel7] = (pixel);	\	    break;			\	case 13:			\	    ((CARD32 *) (dst))[SinglePixel4] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel6] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel7] = (pixel);	\	    break;			\	case 14:			\	    ((CARD32 *) (dst))[SinglePixel5] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel6] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel7] = (pixel);	\	    break;			\	case 15:			\	    ((CARD32 *) (dst))[SinglePixel4] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel5] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel6] = (pixel);	\	    ((CARD32 *) (dst))[SinglePixel7] = (pixel);	\	    break;			\	}				\    }#endif /* PGSZ */#if PGSZ == 32#define SwitchBitGroup(dst,pixel,bits) { \	switch (bits) { \	case 0: \       	    break; \	case 1: \	    SwitchBitsLoop (((CARD16 *) (dst))[DoublePixel0] = (pixel); \			    ((CARD8 *) (dst))[SinglePixel2] = (pixel);) \	    break; \	case 2: \	    SwitchBitsLoop (((CARD8 *) (dst))[SinglePixel3] = (pixel); \			    ((CARD16 *) (dst))[DoublePixel2] = (pixel);) \	    break; \	case 3: \	    SwitchBitsLoop (((CARD32 *) (dst))[QuadPixel0] = (pixel); \			    ((CARD16 *) (dst))[DoublePixel2] = (pixel);) \	    break; \

⌨️ 快捷键说明

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