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

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

?? ucguifontgen.cpp

?? UCGUIFontTool 生成漢字點陣
?? CPP
?? 第 1 頁 / 共 2 頁
字號:

/***********************************************************************
  REVISION LOG ENTRY
  Revision By: UCGUIFontGen.cpp
  Revised on 2005-8-29 22:59:53
  QQ:106719880
  Email:ucgui@163.com
  Home:http://www.ucgui.com
  Comments: UCGUIFontTool 1.0.0.0
 ***********************************************************************/


#include "Stdafx.h"
#include "UCGUIFontGen.h"
#include "resource.h"
#include "math.h"
#include "malloc.h"

#include <commdlg.h>
#include <commctrl.h>

//#define fontfile	"hzk24h.c"
//#define fontname	"Simsun"
#define fontbytes	fontsize * byteline			//一個點陣所占字節數...

#define Need_Note	1

int fontXDist		=	12;
int fontsize		=	12;
int byteline		=	2;	//字體一行的字節數...
char fontname[100];
char fontfile[100];

int OutputCharFlag[300];	//第一位都有于記載位于此位的字符是否輸出...

#define FONTKING 15
OutputFontName fontNameStruct[FONTKING] = {
	{"宋體", "SimSun"},
	{"黑體", "SimHei"},
	{"幼圓", "YouYuan"},
	{"新宋體", "NewSimSun"},
	{"隸書", "LiSu"},
	{"楷體_GB2312", "KaiTi"},
	{"華文中宋", "STZhongSong"},
	{"華文行楷", "STXingKai"},
	{"華文新魏", "STXinWei"},
	{"華文細黑", "STXiHei"},
	{"華文仿宋", "STFangSong"},
	{"華文彩云", "STCaiYun"},
	{"仿宋_GB2312", "FangSong_GB2312"},
	{"方正姚體", "FZYaoTi"},
	{"方正舒體", "FZShuTi"}
};

  char hzkhead[] = "#include \"..\\core\\GUI.H\" \n\
#ifndef GUI_FLASH \n\
	#define GUI_FLASH \n\
#endif \n\
extern GUI_FLASH const GUI_FONT GUI_FontHZ_%s;\n";

  char hzktitleinfo[] = "/* %s - %s font for UCGUI font driver */ \n\
/********************************************************************************************************\n\
*                                            UCGUI\n\
*                                       http://www.ucgui.com\n\
*\n\
*                             (c) Copyright 2005-2006, UCGUI專業論壇, 學習交流UCGUI\n\
*\n\
*                               	ucgui@16.com 2005.07.31\n\
*                                           作者: ucgui\n\
*********************************************************************************************************\n\
*/\n";

  char hzkprefix[] = "GUI_FLASH  const unsigned char acFontHZ%s_%02x%2x[%d] = {	%s";
  char hzkfontexplain[] = "/* %s */";
  char hzkprefix_tmp[300];
  char hzkprefix_long_tmp[1000];

  char hzksuffix[] = "};\n";

  char hzkcharinfo[] = "GUI_FLASH const GUI_CHARINFO GUI_FontHZ%s_CharInfo[%d] = {";

#ifdef Need_Note
  char hzkcharinfo_2[] = "{ %d, %d, %d, (void GUI_FLASH *)&acFontHZ%s_%02x%2x},/* %s %d */";
#else
  char hzkcharinfo_2[] = "{ %d, %d, %d, (void GUI_FLASH *)&acFontHZ%s_%02x%2x},";
#endif

  char hzkpropinfo[] = "GUI_FLASH  const GUI_FONT_PROP GUI_FontHZ%s_Prop%s= {\n\
      0x%02x%02x,\n\
      0x%02x%02x,\n\
      &GUI_FontHZ%s_CharInfo[%d],\n\
      (void *)&GUI_FontHZ%s_Prop%s \n\
};";

  char hzkpropascinfo[] = "\nGUI_FLASH const GUI_FONT_PROP GUI_FontHZ%s_Prop%s= {\n\
      0x%02x%02x,\n\
      0x%02x%02x,\n\
      &GUI_FontHZ%s_CharInfo[%d],\n\
      (void *)&GUI_FontHZ%s_Prop%s \n\
};";

  char hzkproplastinfo[] = "\nGUI_FLASH const GUI_FONT_PROP GUI_FontHZ%s_Prop%s= {\n\
      0x%02x%02x,\n\
      0x%02x%02x,\n\
      &GUI_FontHZ%s_CharInfo[%d],\n\
      (void *)%s \n\
};";

  char hzkfontinfo[] = "GUI_FLASH const GUI_FONT GUI_FontHZ_%s = {\n\
      GUI_FONTTYPE_PROP_SJIS, \n\
      %d, \n\
      %d, \n\
      %d,  \n\
      %d,  \n\
      (void GUI_FLASH *)&GUI_FontHZ%s_Prop%s\n\
};";


LRESULT CALLBACK GenAllFontProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
LRESULT CALLBACK ChooseFontProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);


HWND g_hDlg = 0;
HINSTANCE g_hInst = 0;
HDC hDC = 0;
FILE* fp = 0;
int i = 0, j = 0;
BYTE area1 = 0, area2 = 0;

BOOL APIENTRY DllMain( HANDLE hModule, 
                       DWORD  ul_reason_for_call, 
                       LPVOID lpReserved
					 )
{
	g_hInst = (HINSTANCE)hModule;
    return TRUE;
}

void WirteHZKFile(char* buf, int len, FILE* fp)
{
	fprintf(fp, "%s\n", (unsigned char* )buf);
	fflush(fp);
}

///////////////////////////////////////////////////////////////////////
//
// 函數名       : GetAscCharIsOut
// 功能描述     : 獲取指定Ascii字符是否輸出...
// 參數         : BYTE ascCode
// 返回值       : bool 
//
///////////////////////////////////////////////////////////////////////
bool GetAscCharIsOut(BYTE ascCode)
{
	int IsOut = 0;
	IsOut = OutputCharFlag[(ascCode-0x20)/32];
	IsOut = (IsOut & (1 << (ascCode-0x20)%32)) >> ((ascCode-0x20)%32);
	if(!IsOut) return 0;
	return 1;
}


///////////////////////////////////////////////////////////////////////
//
// 函數名       : GetHZCharIsOut
// 功能描述     : 判斷指定漢字字符是否輸出...
// 參數         : BYTE area1
// 參數         : BYTE area2
// 返回值       : bool 
//
///////////////////////////////////////////////////////////////////////
bool GetHZCharIsOut(BYTE area1, BYTE area2)
{
	int IsOut = 0;
	int BytePos = 0;
	if(area1 < 0xa1 || area2 < 0xa1 )  return 0;
	BytePos = (area1-0xa1)*94 + (area2 - 0xa1) + 0x60;
	IsOut = OutputCharFlag[BytePos/32];
	IsOut = (IsOut & (1 << BytePos%32)) >> (BytePos%32);
	if(!IsOut) return 0;
	return 1;
}


///////////////////////////////////////////////////////////////////////
//
// 函數名       : GetCharInfoPos
// 功能描述     : 獲取指定字符在選定輸出的字符中的序列號...
// 參數         : BYTE area1
// 參數         : BYTE area2
// 返回值       : int 
//
///////////////////////////////////////////////////////////////////////
int GetCharInfoPos(BYTE area1, BYTE area2)
{
	int i = 0;
	int IsOut = 0;
	int BytePos = 0;
	int bppPos = 0;
	if(area2 == 0){
		if(area1 < 0x20 || area1 > 0x80 ) return 0;
		BytePos = area1 - 0x20;
		IsOut = OutputCharFlag[BytePos/32];
	}
	else if(area2 > 0xa0){
		if(area1 < 0xa1 || area2 < 0xa1 )  return 0;
		BytePos = (area1-0xa1)*94 + (area2 - 0xa1) + 0x60;
		IsOut = OutputCharFlag[BytePos/32];
	}
	else return 0;
	for(i = 0; i < BytePos/32; i++){
		if(OutputCharFlag[i] == 0) continue;
		if(OutputCharFlag[i] == 0xffffffff){
			bppPos += 32;
			continue;
		}
		for(int j = 0; j < 32; j++){
			if((OutputCharFlag[i] >> j) & 1) bppPos++;
		}
	}
	for(i = 0; i < BytePos%32; i++){
		if((IsOut >> i) & 1) bppPos++;
	}
	return bppPos;		
}



///////////////////////////////////////////////////////////////////////
//
// 函數名       : GenFontInfo
// 功能描述     : 輸出UCGUI中的.C文件的字體結構體.
// 參數         : char* lastPropName
// 返回值       : bool 
//
///////////////////////////////////////////////////////////////////////
bool GenFontInfo(char* lastPropName)
{
	if(lastPropName){
		sprintf(hzkprefix_tmp, hzkfontinfo, fontname, fontsize, fontsize, 1, 1, fontname, lastPropName);
	}
	else sprintf(hzkprefix_tmp, hzkfontinfo, fontname, fontsize, fontsize, 1, 1, fontname);
	WirteHZKFile(hzkprefix_tmp, strlen(hzkprefix_tmp), fp);	 	
	return 1;
}


char* GenFontPropInfo()
{
	char tmpbuf[100];
	char* lastPropName = NULL;
	int offset = 0, FileLen = 0;
	bool fisrtPropInfo = 0;
	BYTE firstCharacter = 0, lastCharacter = 0;
	int charOffsetPos = 0, IsOut = 0;
	OutPutCharProp* lpoutPrePropInfo = NULL, *lpoutCurPropInfo = NULL, *lpoutFirstPropInfo = NULL;
	memset(hzkprefix_tmp, 0, 300);
	int noOutputRange = GetCharInfoPos(0xb0, 0xa1) - GetCharInfoPos(0xa9, 0xff);
	for(area1 = 0xf7; area1 > 0xa0; area1--){
		if(area1 > 0xa9 && area1 < 0xb0) continue;
		for(area2 = 0xfe; area2 > 0xa0; area2--){
			IsOut = GetHZCharIsOut(area1, area2);
			if(lastCharacter == 0 && IsOut){
				lastCharacter = area2;
				if(lastCharacter != 0xa1) continue;	//分區邊界時, 要注意...
			}
			if(lastCharacter == 0)	continue;
			if(IsOut && area2 != 0xa1 && lastCharacter != 0xa1) continue;	//到達漢字分區時,必須切斷...
			if(area2 == 0xa1) firstCharacter = area2;
			else firstCharacter = area2+1;
			if(area1 >= 0xb0){
				charOffsetPos = GetCharInfoPos(area1, firstCharacter) - noOutputRange;
			}
			else{
				charOffsetPos = GetCharInfoPos(area1, firstCharacter);
			}
			sprintf(tmpbuf, "%02x%02x", area1, firstCharacter);
			if(fisrtPropInfo == 0)
				sprintf(hzkprefix_tmp, hzkproplastinfo, fontname, tmpbuf, area1, firstCharacter, area1, lastCharacter, fontname, charOffsetPos, "0");
			else
				sprintf(hzkprefix_tmp, hzkpropinfo, fontname, tmpbuf, area1, firstCharacter, area1, lastCharacter, fontname, charOffsetPos, fontname, "%s");	
			lpoutCurPropInfo = (OutPutCharProp*) malloc(sizeof(OutPutCharProp));
			if(!lpoutCurPropInfo) continue;
			lpoutCurPropInfo->firstCharacter[0] = area1;
			lpoutCurPropInfo->firstCharacter[1] = firstCharacter;
			lpoutCurPropInfo->firstCharacter[2] = 0;
			lpoutCurPropInfo->lastCharacter[0] = area1;
			lpoutCurPropInfo->lastCharacter[1] = lastCharacter;
			lpoutCurPropInfo->lastCharacter[2] = 0;
			strcpy(lpoutCurPropInfo->propName, tmpbuf);
			lpoutCurPropInfo->lpPropChar = (char*) malloc(strlen(hzkprefix_tmp)*sizeof(char)+1);
			memcpy(lpoutCurPropInfo->lpPropChar, hzkprefix_tmp, strlen(hzkprefix_tmp));
			lpoutCurPropInfo->lpPropChar[strlen(hzkprefix_tmp)] = 0;
			memset(hzkprefix_tmp, 0, strlen(hzkprefix_tmp));
			lpoutCurPropInfo->lpNext = NULL;
			if(lpoutPrePropInfo == NULL){
				lpoutPrePropInfo = lpoutCurPropInfo;
				lpoutFirstPropInfo = lpoutCurPropInfo;	//記住鏈表頭指針...
			}
			else{
				lpoutPrePropInfo->lpNext = lpoutCurPropInfo;
			}
			lpoutPrePropInfo = lpoutCurPropInfo;
			fisrtPropInfo = 1;	
			lastCharacter = 0;	//注意這一點...
		}
	}
	for(area1 = 0; area1 == 0; area1--){
		for(area2 = 0x7f; area2 >= 0x20; area2--){
			IsOut = GetAscCharIsOut(area2);
			if(lastCharacter == 0 && IsOut){
				lastCharacter = area2;
				if(area2 != 0x20) continue;			//注意0x20作為一個單獨字符輸出的情況
			}
			if(lastCharacter == 0)	continue;
			if(IsOut && area2 != 0x20) continue;	//到達漢字分區時,必須切斷...
			if(area2 == 0x20) firstCharacter = area2;
			else firstCharacter = area2+1;
			charOffsetPos = GetCharInfoPos(firstCharacter, area1);
			sprintf(tmpbuf, "%02x%02x", area1, firstCharacter);
			sprintf(hzkprefix_tmp, hzkpropinfo, fontname, tmpbuf, area1, firstCharacter, area1, lastCharacter, fontname, charOffsetPos, fontname, "%s");
			lpoutCurPropInfo = (OutPutCharProp*) malloc(sizeof(OutPutCharProp));
			if(!lpoutCurPropInfo) continue;
			lpoutCurPropInfo->firstCharacter[0] = firstCharacter;
			lpoutCurPropInfo->firstCharacter[1] = 0;
			lpoutCurPropInfo->lastCharacter[0] = lastCharacter;
			lpoutCurPropInfo->lastCharacter[1] = 0;
			strcpy(lpoutCurPropInfo->propName, tmpbuf);
			//注意分配了符串時要多分配1字節, 用于存0表示字符串結束的. 不則strcpy時會占用后面一個字節
			//從而破壞了用free此內存的數據結構, 每一分配的內存前后均有用于管理此塊內存的數據, 否則free時會出錯...
			lpoutCurPropInfo->lpPropChar = (char*) malloc(strlen(hzkprefix_tmp)*sizeof(char)+1);
			strcpy(lpoutCurPropInfo->lpPropChar, hzkprefix_tmp);
			memset(hzkprefix_tmp, 0, strlen(hzkprefix_tmp));
			lpoutCurPropInfo->lpNext = NULL;
			if(lpoutPrePropInfo == NULL){
				lpoutPrePropInfo = lpoutCurPropInfo;
				lpoutFirstPropInfo = lpoutCurPropInfo;	//記住鏈表頭指針...
			}
			else{
				lpoutPrePropInfo->lpNext = lpoutCurPropInfo;
			}
			lpoutPrePropInfo = lpoutCurPropInfo;
			lastCharacter = 0;	//注意這一點...
		}
	}
	if(lpoutCurPropInfo){
		lastPropName = (char*) malloc(sizeof(char)*strlen(lpoutCurPropInfo->propName)+1);
		strcpy(lastPropName, lpoutCurPropInfo->propName);
	}
	if(lpoutFirstPropInfo){
		if(lpoutFirstPropInfo->lpPropChar){
			#ifdef Need_Note
				sprintf(hzkprefix_tmp, "/*%s--%s*/", lpoutFirstPropInfo->firstCharacter, lpoutFirstPropInfo->lastCharacter);
				WirteHZKFile(hzkprefix_tmp, strlen(hzkprefix_tmp), fp);	 		
				memset(hzkprefix_tmp, 0, strlen(hzkprefix_tmp));
			#endif
			WirteHZKFile(lpoutFirstPropInfo->lpPropChar, strlen(lpoutFirstPropInfo->lpPropChar), fp);
		}
		lpoutPrePropInfo = lpoutFirstPropInfo;
		lpoutFirstPropInfo = lpoutFirstPropInfo->lpNext;
	}
	for(; lpoutFirstPropInfo != NULL; lpoutFirstPropInfo = lpoutFirstPropInfo->lpNext){
		if(lpoutFirstPropInfo->lpPropChar){
			#ifdef Need_Note
				sprintf(hzkprefix_tmp, "/*%s--%s*/", lpoutFirstPropInfo->firstCharacter, lpoutFirstPropInfo->lastCharacter);
				WirteHZKFile(hzkprefix_tmp, strlen(hzkprefix_tmp), fp);	 		
				memset(hzkprefix_tmp, 0, strlen(hzkprefix_tmp));
			#endif
			sprintf(hzkprefix_tmp, lpoutFirstPropInfo->lpPropChar, lpoutPrePropInfo->propName);
			WirteHZKFile(hzkprefix_tmp, strlen(hzkprefix_tmp), fp);	 		
		}
		if(lpoutPrePropInfo){
			if(lpoutPrePropInfo->lpPropChar) free(lpoutPrePropInfo->lpPropChar);
			 free(lpoutPrePropInfo);
		}
		lpoutPrePropInfo = lpoutFirstPropInfo;		
	}	
	if(lpoutPrePropInfo){
		if(lpoutPrePropInfo->lpPropChar) free(lpoutPrePropInfo->lpPropChar);
		free(lpoutPrePropInfo);
	}
	return lastPropName;
}


///////////////////////////////////////////////////////////////////////
//
// 函數名       : GetOneCharInfo
// 功能描述     : 獲取字符寬度及字符之間水平距離,及字符寬度占用字節數.
// 參數         : int area1
// 參數         : int area2
// 返回值       : CHARINFO 
//
///////////////////////////////////////////////////////////////////////
CHARINFO GetOneCharInfo(int area1, int area2)
{
	CHARINFO retCharInfo;
	SIZE SizeChar;
	unsigned char HZ[3];
	HZ[0] = area1; HZ[1] = area2; HZ[2] = 0x0;
	GetTextExtentPoint(hDC, (LPCTSTR)HZ, strlen((const char *)HZ), &SizeChar);
	retCharInfo.XDist = (BYTE)SizeChar.cx;
	retCharInfo.XSize = (BYTE)SizeChar.cx;
	if(SizeChar.cx % 8)	SizeChar.cx = (SizeChar.cx + 7) & 0xffff8;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
不卡视频免费播放| 日韩欧美精品三级| 日韩欧美国产系列| 中文字幕视频一区| 韩国精品久久久| 色成人在线视频| 国产精品私人影院| 麻豆国产精品一区二区三区| 一本久久精品一区二区| 久久婷婷综合激情| 久久99热99| 7777精品伊人久久久大香线蕉| 国产精品水嫩水嫩| 国产一区二区三区精品视频| 欧美一卡2卡三卡4卡5免费| 亚洲国产综合人成综合网站| 91香蕉视频在线| 国产精品视频第一区| 久久99久久久欧美国产| 91精品在线一区二区| 香蕉成人伊视频在线观看| 色婷婷综合久久| 亚洲欧美国产高清| 91看片淫黄大片一级在线观看| 中文字幕免费不卡| 成人在线视频一区二区| 欧美精品一区二区三区蜜桃视频 | 欧美色电影在线| 亚洲欧美日韩电影| 色中色一区二区| 一区二区久久久久| 在线视频亚洲一区| 亚洲1区2区3区视频| 欧美另类久久久品| 亚洲一区二区视频在线观看| 日本精品一区二区三区四区的功能| 中文字幕人成不卡一区| 欧美丰满少妇xxxxx高潮对白 | 国产性色一区二区| 九九久久精品视频| 久久众筹精品私拍模特| 国产成人综合亚洲网站| 国产精品色一区二区三区| www.亚洲精品| 亚洲综合一区二区精品导航| 欧美日韩国产123区| 丝袜诱惑亚洲看片| 日韩精品影音先锋| 成人毛片老司机大片| 1024成人网| 欧美日韩成人高清| 国产在线精品国自产拍免费| 亚洲欧洲性图库| 在线中文字幕一区二区| 视频一区二区欧美| 国产蜜臀av在线一区二区三区| 国产成人无遮挡在线视频| 亚洲女与黑人做爰| 欧美大度的电影原声| 成人白浆超碰人人人人| 亚洲国产aⅴ天堂久久| 精品sm在线观看| 色噜噜狠狠色综合中国| 免费黄网站欧美| 亚洲色图视频网| 日韩欧美一区中文| 99视频在线观看一区三区| 丝袜美腿亚洲综合| 国产精品久线观看视频| 欧美酷刑日本凌虐凌虐| 国产成人欧美日韩在线电影| 亚洲国产精品一区二区尤物区| 精品国产电影一区二区| 日本精品免费观看高清观看| 久久超碰97人人做人人爱| 亚洲黄色免费电影| 国产日本欧美一区二区| 3751色影院一区二区三区| 93久久精品日日躁夜夜躁欧美| 日本sm残虐另类| 一区二区在线电影| www亚洲一区| 欧美狂野另类xxxxoooo| 色哟哟在线观看一区二区三区| 久88久久88久久久| 天天综合日日夜夜精品| 综合久久久久久久| 欧美激情综合在线| 精品成人一区二区三区四区| 欧美日韩激情在线| 色综合久久久久综合体桃花网| 国产一区二区视频在线播放| 亚洲国产综合人成综合网站| 综合色中文字幕| 国产精品三级av| 国产日韩精品一区二区浪潮av| 欧美一卡2卡3卡4卡| 欧美喷潮久久久xxxxx| 日韩欧美国产一区在线观看| 欧美调教femdomvk| 一本一道久久a久久精品| 成人国产电影网| 成人成人成人在线视频| 成人亚洲一区二区一| 国产一区视频在线看| 日本伊人色综合网| 五月天亚洲婷婷| 日本少妇一区二区| 天天免费综合色| 日本在线不卡视频| 久久精品国产99国产精品| 麻豆91免费观看| 精品一区二区三区香蕉蜜桃| 精品一区二区在线播放| 激情文学综合丁香| 国产精品 欧美精品| 丁香六月久久综合狠狠色| 国产精品综合一区二区| 国产一区福利在线| 国产精品一级在线| 成人国产免费视频| 欧美综合色免费| 7777精品伊人久久久大香线蕉完整版| 欧美日本一道本在线视频| 91精品国产麻豆国产自产在线| 欧美一区欧美二区| 日韩一卡二卡三卡| 久久久久久久一区| 国产精品无遮挡| 亚洲综合丝袜美腿| 日韩成人一区二区三区在线观看| 免费高清在线一区| 国产激情一区二区三区四区 | 久久99精品国产| 国产91精品在线观看| 色综合一个色综合| 91精品国产色综合久久不卡电影 | 日日骚欧美日韩| 激情综合网激情| 99久久婷婷国产综合精品| 欧美日韩三级一区| 2023国产一二三区日本精品2022| 日本一区二区成人在线| 亚洲一卡二卡三卡四卡无卡久久| 福利电影一区二区三区| 欧美艳星brazzers| 久久影院视频免费| 亚洲主播在线观看| 国产一区二区三区观看| 色综合激情久久| 精品美女在线观看| 亚洲最新视频在线播放| 毛片不卡一区二区| 色香色香欲天天天影视综合网| 欧美妇女性影城| 国产精品传媒在线| 日本不卡一区二区三区| 成人伦理片在线| 日韩欧美一区二区视频| 亚洲免费视频成人| 国产一级精品在线| 欧美日韩视频在线观看一区二区三区| 2022国产精品视频| 亚洲成人福利片| 色综合一个色综合| 国产亚洲精品福利| 老汉av免费一区二区三区| 色综合天天视频在线观看| 久久精品视频网| 日本成人中文字幕在线视频| 色婷婷激情一区二区三区| 久久综合一区二区| 轻轻草成人在线| 欧美主播一区二区三区| 欧美激情一区二区三区在线| 精品亚洲欧美一区| 51精品秘密在线观看| 亚洲一区二区三区四区在线免费观看| 高清shemale亚洲人妖| 精品久久久久久亚洲综合网| 亚洲大片一区二区三区| 色综合久久久久| 最新久久zyz资源站| 成人美女视频在线观看18| 久久久久久久久久久黄色| 久久99精品久久久久久久久久久久| 在线免费观看成人短视频| 亚洲三级理论片| 91老师片黄在线观看| 亚洲欧洲精品天堂一级| 成人精品高清在线| 中文字幕亚洲不卡| 色综合天天性综合| 亚洲视频小说图片| 91美女蜜桃在线| 亚洲精品免费电影| 91官网在线免费观看| 亚洲一二三专区| 欧美午夜影院一区| 日日摸夜夜添夜夜添精品视频|