亚洲欧美第一页_禁久久精品乱码_粉嫩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@163.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";

// 2007-02-24 12:01:44
//  char hzkcharinfo[] = "GUI_FLASH const GUI_CHARINFO GUI_FontHZ%s_CharInfo[%d] = {";
  char hzkcharinfo[] = "GUI_FLASH const GUI_CHARINFO GUI_FontHZ%s_CharInfo[] = {";

#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;
			if(IsOut && 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;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美在线视频全部完| 欧美大白屁股肥臀xxxxxx| 欧美精品色综合| 国产欧美1区2区3区| 亚洲高清一区二区三区| 国产盗摄视频一区二区三区| 欧美午夜精品久久久久久孕妇| www日韩大片| 亚洲成人免费视| 色综合咪咪久久| 亚洲国产精品高清| 精品一区二区三区视频在线观看 | 偷拍亚洲欧洲综合| www.亚洲色图.com| 久久久av毛片精品| 日韩二区三区在线观看| 欧美在线观看视频一区二区 | 色综合一区二区| 久久综合色8888| 日本系列欧美系列| 在线观看免费一区| 日韩美女久久久| a级精品国产片在线观看| 久久婷婷国产综合国色天香| 日本最新不卡在线| 欧美日韩一区三区四区| 亚洲精品久久久蜜桃| jlzzjlzz国产精品久久| 中文字幕乱码日本亚洲一区二区 | 91小视频免费观看| 国产精品久久久久国产精品日日 | 国产农村妇女毛片精品久久麻豆 | 97久久久精品综合88久久| 国产日韩欧美一区二区三区综合 | 国产性天天综合网| 国产精品77777| 亚洲国产精品高清| www..com久久爱| 亚洲免费av在线| 在线免费观看成人短视频| 亚洲在线观看免费视频| 欧美性生活大片视频| 午夜精品久久久久久| 91精品国产手机| 卡一卡二国产精品| 国产亚洲成av人在线观看导航| 成人v精品蜜桃久久一区| 国产精品国产三级国产普通话三级 | 久久影院视频免费| 国产一区二区91| 国产精品久久久久久久久图文区| 91美女片黄在线观看| 欧美日韩精品一区二区天天拍小说| 久久久久国产精品厨房| 国产午夜亚洲精品午夜鲁丝片| 亚洲在线中文字幕| 欧美人妖巨大在线| 精品国产伦一区二区三区观看体验 | 99r精品视频| 亚洲一区二区在线免费观看视频| 在线成人免费观看| 精品一区二区成人精品| 中文字幕一区二区三区四区| 在线一区二区三区| 免费在线看成人av| 国产精品国产三级国产专播品爱网| 欧洲国内综合视频| 韩国欧美国产1区| 亚洲毛片av在线| 日韩三级高清在线| 99精品视频一区二区| 日韩成人免费在线| 亚洲图片你懂的| 日韩女优视频免费观看| 91无套直看片红桃| 美脚の诱脚舐め脚责91| 亚洲男人的天堂网| 欧美tickling挠脚心丨vk| 91日韩在线专区| 青青青伊人色综合久久| 综合色中文字幕| 精品久久久久久久久久久久久久久| 色综合久久综合网97色综合 | www.一区二区| 蜜桃精品视频在线| 一区二区三区久久久| 国产日韩欧美一区二区三区乱码| 欧美久久久久久蜜桃| 91丝袜美女网| 国产福利一区在线| 青青国产91久久久久久| 亚洲国产一区二区a毛片| 国产日韩av一区| 精品久久五月天| 91麻豆精品国产91久久久更新时间 | 亚洲国产精品久久一线不卡| 中文在线资源观看网站视频免费不卡| 欧美肥胖老妇做爰| 欧美性感一区二区三区| 99国产精品久久久| 国产成人精品免费网站| 国内欧美视频一区二区| 免费在线观看不卡| 日韩成人av影视| 日产欧产美韩系列久久99| 亚洲另类色综合网站| 中文字幕一区二区三区在线不卡 | 国产欧美一区二区三区鸳鸯浴| 日韩视频123| 欧美一级二级三级乱码| 在线电影欧美成精品| 51精品秘密在线观看| 欧美美女一区二区三区| 欧美日韩亚洲综合在线| 欧美性大战久久久久久久蜜臀| 一本大道久久a久久综合婷婷| 成人黄色电影在线| 成人国产精品免费观看视频| 国产 日韩 欧美大片| 国产精品一区二区在线播放| 国产成人午夜高潮毛片| 东方欧美亚洲色图在线| 成人av综合一区| 91在线丨porny丨国产| 91亚洲男人天堂| 欧美视频精品在线| 欧美高清视频一二三区 | 精品在线你懂的| 麻豆视频一区二区| 狠狠色丁香婷婷综合| 国产精品资源站在线| 成人av在线资源网站| 一本一道久久a久久精品| 欧美日本一区二区三区| 日韩免费在线观看| 国产精品沙发午睡系列990531| 国产精品高潮久久久久无| 亚洲欧美激情小说另类| 天天av天天翘天天综合网 | 一区二区三区免费| 五月婷婷欧美视频| 国产综合一区二区| av爱爱亚洲一区| 欧美精品xxxxbbbb| 久久亚洲精精品中文字幕早川悠里 | 欧美在线小视频| 欧美电视剧免费观看| 国产农村妇女精品| 亚洲第一成人在线| 极品少妇xxxx精品少妇偷拍| 99久久99精品久久久久久| 欧美性色黄大片| 久久亚洲精华国产精华液| 一区二区三区波多野结衣在线观看 | 亚洲福利一区二区三区| 日本不卡一二三区黄网| 丁香激情综合国产| 欧美男人的天堂一二区| 国产精品国产三级国产aⅴ原创| 丝袜脚交一区二区| 99久久精品免费观看| 欧美一级免费大片| 亚洲人成影院在线观看| 久久99国产精品免费| 在线日韩av片| 欧美激情一区在线观看| 日本不卡123| 91精品福利在线| 国产欧美一区二区精品仙草咪| 亚洲妇女屁股眼交7| av电影天堂一区二区在线| 精品入口麻豆88视频| 亚洲综合色在线| 高清av一区二区| 欧美精品一区二区不卡| 亚洲h动漫在线| 91视频免费观看| 欧美韩国日本综合| 久久99精品国产麻豆不卡| 欧美日韩国产综合一区二区三区| 国产精品白丝在线| 国产成人综合自拍| 日韩三级免费观看| 日韩影院免费视频| 在线国产电影不卡| 亚洲精品亚洲人成人网在线播放| 国产超碰在线一区| 精品国精品国产尤物美女| 日韩在线一二三区| 欧美日韩精品三区| 亚洲国产综合色| 欧美综合欧美视频| 亚洲黄色小视频| 色香蕉成人二区免费| 亚洲理论在线观看| 色婷婷亚洲精品| 亚洲一区二区三区四区中文字幕| 色网综合在线观看| 一区二区三国产精华液| 在线免费不卡视频|