亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? guiaachar.c

?? 這套代碼已經成功一直到S3C44B0X開發板上
?? C
字號:
/*
*********************************************************************************************************
*                                                uC/GUI
*                        Universal graphic software for embedded applications
*
*                       (c) Copyright 2002, Micrium Inc., Weston, FL
*                       (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
*
*              礐/GUI is protected by international copyright laws. Knowledge of the
*              source code may not be used to write a similar product. This file may
*              only be used in accordance with a license and should not be redistributed
*              in any way. We appreciate your understanding and fairness.
*
----------------------------------------------------------------------
File        : GUICharAA.C
Purpose     : Display antialiased
---------------------------END-OF-HEADER------------------------------
*/

#include "GUI_Private.h"
 
#if GUI_SUPPORT_AA

#include <stdio.h>
#include <string.h>

/*********************************************************************
*
*       Types
*
**********************************************************************
*/

typedef void tSetPixelAA(int x, int y, U8 Intens);

/*********************************************************************
*
*       Static data
*
**********************************************************************
*/

static const U8 Bit2Mask0[] = {1<<7, 1<<5, 1<<3, 1<<1};
static const U8 Bit2Mask1[] = {1<<6, 1<<4, 1<<2, 1<<0};

/*********************************************************************
*
*       Static code
*
**********************************************************************
*/
/*********************************************************************
*
*       Draw
*/
static void Draw(int x0, int y0, int XSize, int YSize, int BytesPerLine, const U8*pData) {
    int x, y;
    tSetPixelAA* pfSetPixelAA;
    pfSetPixelAA = (GUI_Context.TextMode & GUI_TM_TRANS)
                 ? LCD_SetPixelAA : LCD_SetPixelAA_NoTrans;
	  for (y=0; y<YSize; y++) {
  	  const U8* pData0 = pData;
	    const U8* pData1 = pData+BytesPerLine;
  	  for (x=0; x<XSize; x++) {
        int PixelCnt=0;
        int Mask0 = Bit2Mask0[x&3];
        int Mask1 = Bit2Mask1[x&3];
			  if ((*pData0) & Mask0)
			    PixelCnt++;
			  if ((*pData0) & Mask1)
			    PixelCnt++;
			  if ((*pData1) & Mask0)
			    PixelCnt++;
			  if ((*pData1) & Mask1)
			    PixelCnt++;
        if ((x&3) ==3) {
          pData0++;
          pData1++;
			  }
        switch (PixelCnt) {
        case 4: LCD_HL_DrawPixel(x0+x,y0+y);      break;
        case 3: (*pfSetPixelAA) (x0+x,y0+y, 12); break;
        case 2: (*pfSetPixelAA) (x0+x,y0+y, 8);  break;
        case 1: (*pfSetPixelAA) (x0+x,y0+y, 4);  break;
			  }
  	  }
      pData+=2*BytesPerLine;
	  }
}

/*********************************************************************
*
*       GUIPROP_FindChar
*/
static const GUI_FONT_PROP* GUIPROP_FindChar(const GUI_FONT_PROP* pProp, U16P c) {
  for (pProp = GUI_Context.pAFont->p.pProp; pProp; pProp=(const GUI_FONT_PROP*) pProp->pNext) {
    if ((c>=pProp->First) && (c<=pProp->Last))
      break;
  }
  return pProp;
}

/*********************************************************************
*
*       Public code
*
**********************************************************************
*/
/*********************************************************************
*
*       GUIPROPAA_DispChar
*/
void GUIPROPAA_DispChar(U16P c) {
  int BytesPerLine;
  GUI_DRAWMODE DrawMode = GUI_Context.TextMode;
  const GUI_FONT_PROP* pProp = GUIPROP_FindChar(GUI_Context.pAFont->p.pProp, c);
  if (pProp) {
    GUI_DRAWMODE OldDrawMode;
    const GUI_CHARINFO* pCharInfo = pProp->paCharInfo+(c-pProp->First);
    BytesPerLine = pCharInfo->BytesPerLine;
    OldDrawMode  = LCD_SetDrawMode(DrawMode);
    Draw  ( GUI_Context.DispPosX, GUI_Context.DispPosY,
                       (pCharInfo->XSize+1)/2,
                       GUI_Context.pAFont->YSize,
                       BytesPerLine,
                       (U8 const*) pCharInfo->pData
                       );
    LCD_SetDrawMode(OldDrawMode); /* Restore draw mode */
    GUI_Context.DispPosX += (pCharInfo->XDist+1)/2;
  }
}

/*********************************************************************
*
*       GUIPROPAA_GetCharDistX
*/
int GUIPROPAA_GetCharDistX(U16P c) {
  int r;
  const GUI_FONT_PROP* pProp = GUIPROP_FindChar(GUI_Context.pAFont->p.pProp, c);
  r = (pProp) ? (pProp->paCharInfo+(c-pProp->First))->XSize : 0;
  return (r+1)/2;
}

/*********************************************************************
*
*       GUIPROPAA_GetFontInfo
*/
void GUIPROPAA_GetFontInfo(const GUI_FONT * pFont, GUI_FONTINFO* pfi) {
  GUI_USE_PARA(pFont);
  pfi->Flags = GUI_FONTINFO_FLAG_PROP | GUI_FONTINFO_FLAG_AA;
}

/*********************************************************************
*
*       GUIPROPAA_IsInFont
*/
char GUIPROPAA_IsInFont(const GUI_FONT * pFont, U16 c) {
  const GUI_FONT_PROP* pProp = GUIPROP_FindChar(pFont->p.pProp, c);
  return (pProp==NULL) ? 0 : 1;
}

#else                            /* Avoid problems with empty object modules */
  void GUIAAChar_C(void);
  void GUIAAChar_C(void) {}
#endif /* GUI_SUPPORT_AA */

/*************************** End of file ****************************/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩电影在线免费| 日韩一区二区精品| 三级成人在线视频| 久久精品欧美一区二区三区麻豆| 91在线码无精品| 伦理电影国产精品| 亚洲人吸女人奶水| 国产午夜亚洲精品午夜鲁丝片| 欧美日韩国产经典色站一区二区三区| 老司机精品视频在线| 亚洲最大的成人av| 国产精品第五页| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 国产精品一区二区在线看| 亚洲一区二区免费视频| 国产精品素人视频| 久久亚洲二区三区| 欧美精品日韩一本| 91久久香蕉国产日韩欧美9色| 欧美卡1卡2卡| 亚洲三级在线播放| 日韩三级免费观看| 91天堂素人约啪| 色综合久久中文综合久久97| gogogo免费视频观看亚洲一| 国产精品久久影院| 国产精品午夜在线| 这里只有精品99re| 不卡一卡二卡三乱码免费网站| 99精品黄色片免费大全| 日韩精品专区在线影院观看 | 五月激情综合婷婷| 欧美日韩在线三区| 香蕉影视欧美成人| 一区二区视频在线| 亚洲国产欧美在线人成| 精品亚洲国产成人av制服丝袜| 国精产品一区一区三区mba桃花| 国产一区二区在线视频| 国产成人一级电影| 91黄视频在线| 51精品久久久久久久蜜臀| 91麻豆精品国产91久久久资源速度| 精品裸体舞一区二区三区| 综合久久久久久久| 成人免费视频app| 亚洲欧美日韩在线不卡| 亚洲成人动漫av| 成人av动漫网站| 首页欧美精品中文字幕| 国产在线精品免费av| 99精品黄色片免费大全| 欧美二区在线观看| 欧美国产精品一区| 日韩高清欧美激情| 成人app网站| 777精品伊人久久久久大香线蕉| 久久精品在线免费观看| 亚洲综合一区在线| 国产精品一二三区在线| 精品视频1区2区3区| 国产色综合一区| 日韩和欧美一区二区三区| 成人看片黄a免费看在线| 欧美一区二区高清| 亚洲乱码国产乱码精品精的特点| 精品综合久久久久久8888| 在线国产亚洲欧美| 亚洲一区二区三区小说| 欧美日韩一区视频| 国产精品―色哟哟| 国产偷v国产偷v亚洲高清| 亚洲mv大片欧洲mv大片精品| 成人h精品动漫一区二区三区| 欧美一二三在线| 一区二区三区在线观看国产| 国产一区二区福利视频| 91精品国产免费| 一区二区三区精品视频| 国产成a人亚洲精| 国产精品福利电影一区二区三区四区| 欧美精品v日韩精品v韩国精品v| 91精品国产综合久久小美女| 一区二区三区在线免费视频 | 麻豆极品一区二区三区| 欧美在线短视频| 亚洲三级在线观看| 成人小视频免费观看| 亚洲国产视频直播| 91色视频在线| 国产精品理伦片| 9色porny自拍视频一区二区| 国产亚洲污的网站| 久久av资源网| 日韩免费视频线观看| 麻豆精品在线播放| 欧美一区二区三区视频免费| 偷拍日韩校园综合在线| 欧美视频一区二区在线观看| 亚洲一区二区中文在线| 91国产丝袜在线播放| 中文字幕在线视频一区| eeuss鲁一区二区三区| 国产精品美女一区二区| www.欧美精品一二区| 国产精品高潮呻吟久久| 99视频在线精品| 亚洲人快播电影网| 在线精品亚洲一区二区不卡| 亚洲成人av一区| 91精品国产综合久久蜜臀| 免费成人av在线播放| 日韩区在线观看| 激情av综合网| 国产色产综合色产在线视频| 成人网页在线观看| 国产精品不卡在线观看| 色综合久久综合| 亚洲资源在线观看| 91精品国产免费| 国产精品自拍三区| 日本一区二区在线不卡| 91一区二区三区在线观看| 怡红院av一区二区三区| 欧美日韩高清在线播放| 久久精品国产一区二区三区免费看| 日韩欧美一区二区久久婷婷| 国产很黄免费观看久久| 日韩美女视频一区二区 | 26uuu精品一区二区| 国产高清精品在线| 亚洲欧美电影院| 欧美日韩在线播放一区| 久久精品国产99国产精品| 国产午夜亚洲精品羞羞网站| 色婷婷久久综合| 日本中文一区二区三区| 国产色91在线| 欧美无人高清视频在线观看| 欧美aaa在线| 国产精品久久久久久久蜜臀| 欧美日韩一区中文字幕| 国产一区二区美女| 一区二区在线免费观看| 欧美一区二区精品久久911| 高清视频一区二区| 午夜视频久久久久久| www精品美女久久久tv| 91看片淫黄大片一级在线观看| 日韩主播视频在线| 国产精品免费久久| 欧美人妇做爰xxxⅹ性高电影| 国产一区二区在线观看免费| 亚洲区小说区图片区qvod| 日韩一区二区三区av| 成人h精品动漫一区二区三区| 日韩精品电影一区亚洲| 国产精品久久久久aaaa樱花| 欧美高清www午色夜在线视频| 丰满岳乱妇一区二区三区| 污片在线观看一区二区 | 成人三级在线视频| 日本视频中文字幕一区二区三区| 欧美国产精品一区| 日韩视频中午一区| 色噜噜狠狠成人网p站| 国产精品一区免费在线观看| 天堂影院一区二区| 亚洲欧洲精品一区二区三区| 精品欧美一区二区久久 | 亚洲一级二级三级| 国产精品理论片| 精品国产精品一区二区夜夜嗨| 在线观看成人小视频| 国产精品1024久久| 激情文学综合插| 亚洲网友自拍偷拍| 亚洲日本在线a| 国产欧美精品一区二区色综合朱莉| 欧美日本一区二区三区| 91丝袜高跟美女视频| 国产乱码一区二区三区| 日本中文一区二区三区| 亚洲午夜精品17c| 亚洲欧美日韩国产另类专区| 日韩国产欧美在线视频| 日韩亚洲欧美成人一区| 亚洲va国产天堂va久久en| 亚洲欧美综合色| 日本一区二区三级电影在线观看| 日韩视频一区二区在线观看| 99在线精品免费| 国产精品天干天干在观线| 精品卡一卡二卡三卡四在线| 欧美精品久久久久久久多人混战 | 天天免费综合色| 亚洲最大的成人av| 亚洲综合免费观看高清完整版在线 | 国产在线视频不卡二| 久久国产三级精品|