精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

ASP.NET圖片加水印的實現代碼(C#)

開發 后端
本文提供了一段ASP.NET圖片加水印的實現代碼(C#)。代碼實現的水印為透明文字水印,可以定義文字水印的位置和透明度。

本文介紹ASP.NET圖片加水印的方法。水印為透明文字水印,可以定義文字水印的位置和透明度。

代碼分幾個部分,請查看代碼中的注釋。

  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Text;  
  4.  
  5. using System.IO;  
  6. using System.Drawing;  
  7. using System.Drawing.Imaging;  
  8. using System.Drawing.Drawing2D;  
  9.  
  10. namespace DocMIS.AppConfig  
  11. {  
  12.     /**//// < summary>  
  13.     /// 水印位置  
  14.     /// < /summary>  
  15.     public enum ImagePosition  
  16.     {  
  17.         /**//// < summary>  
  18.         /// 左上  
  19.         /// < /summary>  
  20.         LeftTop,  
  21.         /**//// < summary>  
  22.         /// 左下  
  23.         /// < /summary>  
  24.         LeftBottom,  
  25.         /**//// < summary>  
  26.         /// 右上  
  27.         /// < /summary>  
  28.         RightTop,  
  29.         /**//// < summary>  
  30.         /// 右下  
  31.         /// < /summary>  
  32.         RigthBottom,  
  33.         /**//// < summary>  
  34.         /// 頂部居中  
  35.         /// < /summary>  
  36.         TopMiddle,  
  37.         /**//// < summary>  
  38.         /// 底部居中  
  39.         /// < /summary>  
  40.         BottomMiddle,  
  41.         /**//// < summary>  
  42.         /// 中心  
  43.         /// < /summary>  
  44.         Center   
  45.     }  
  46.  
  47.     /**//// < summary>  
  48.     /// 圖像操作類(主要用于給圖片加上透明文字水印)  
  49.     /// < /summary>  
  50.     class ImageWater_Word  
  51.     {  
  52.         private string _ErrMsg;  
  53.         #region 出錯信息  
  54.         /**//// < summary>  
  55.         /// 出錯信息  
  56.         /// < /summary>  
  57.         public string ErrMsg  
  58.         {  
  59.             get { return _ErrMsg; }  
  60.             set { _ErrMsg = value; }  
  61.         }  
  62.         #endregion  
  63.  
  64.  
  65.         #region 將文件轉換成流  
  66.         //public byte[] SetImageToByteArray(string fileName, ref string fileSize)  
  67.         /**//// < summary>  
  68.         /// 將文件轉換成流  
  69.         /// < /summary>  
  70.         /// < param name="fileName">文件全路徑< /param>  
  71.         /// < returns>< /returns>  
  72.         private byte[] SetImageToByteArray(string fileName)  
  73.         {  
  74.             byte[] image = null;  
  75.             try 
  76.             {  
  77.                 FileStream fs = new FileStream(fileName, FileMode.Open);  
  78.                 FileInfo fileInfo = new FileInfo(fileName);  
  79.                 //fileSize = Convert.ToDecimal(fileInfo.Length / 1024).ToString("f2") + " K";  
  80.                 int streamLength = (int)fs.Length;  
  81.                 image = new byte[streamLength];  
  82.                 fs.Read(image, 0, streamLength);  
  83.                 fs.Close();  
  84.                 return image;  
  85.             }  
  86.             catch 
  87.             {  
  88.                 return image;  
  89.             }  
  90.         }  
  91.         #endregion  
  92.  
  93.         #region 將byte轉換成MemoryStream類型  
  94.         /**//// < summary>  
  95.         /// ASP.NET圖片加水印:將byte轉換成MemoryStream類型  
  96.         /// < /summary>  
  97.         /// < param name="mybyte">byte[]變量< /param>  
  98.         /// < returns>< /returns>  
  99.         private MemoryStream ByteToStream(byte[] mybyte)  
  100.         {  
  101.             MemoryStream mymemorystream = new MemoryStream(mybyte, 0, mybyte.Length);  
  102.             return mymemorystream;  
  103.         }  
  104.         #endregion  
  105.  
  106.         #region 將byte轉換成Image文件  
  107.         /**//// < summary>  
  108.         /// ASP.NET圖片加水印:將byte轉換成Image文件  
  109.         /// < /summary>  
  110.         /// < param name="mybyte">byte[]變量< /param>  
  111.         /// < returns>< /returns>  
  112.         private System.Drawing.Image SetByteToImage(byte[] mybyte)  
  113.         {  
  114.             System.Drawing.Image image;  
  115.             MemoryStream mymemorystream = new MemoryStream(mybyte, 0, mybyte.Length);  
  116.             image = System.Drawing.Image.FromStream(mymemorystream);  
  117.             return image;  
  118.         }  
  119.         #endregion  
  120.  
  121.  
  122.         #region 批量在圖片上添加透明水印文字  
  123.         /**//// < summary>  
  124.         /// ASP.NET圖片加水印:批量在圖片上添加透明水印文字  
  125.         /// < /summary>  
  126.         /// < param name="arrsourcePicture">原來圖片地址(路徑+文件名)< /param>  
  127.         /// < param name="waterWords">需要添加到圖片上的文字< /param>  
  128.         /// < param name="alpha">透明度(0.1~1.0之間)< /param>  
  129.         /// < param name="position">文字顯示的位置< /param>  
  130.         /// < param name="fRewrite">是否覆蓋原圖片(如果不覆蓋,那么將在同目錄下生成一個文件名帶0607的文件)< /param>  
  131.         /// < returns>< /returns>  
  132.         public bool DrawWords(string[] arrsourcePicture, string waterWords, float alpha, ImagePosition position, bool fRewrite)  
  133.         {  
  134.             foreach (string imgPath in arrsourcePicture)  
  135.             {  
  136.                 if (!DrawWords(imgPath, waterWords, alpha, position, fRewrite))  
  137.                 {  
  138.                     _ErrMsg += "——處理文件:" + imgPath + " 時出錯。";  
  139.                     return false;  
  140.                 }  
  141.             }  
  142.             return true;  
  143.         }  
  144.         #endregion  
  145.  
  146.         #region 在圖片上添加透明水印文字  
  147.         /**//// < summary>  
  148.         /// ASP.NET圖片加水印:在圖片上添加透明水印文字  
  149.         /// < /summary>  
  150.         /// < param name="sourcePicture">原來圖片地址(路徑+文件名)< /param>  
  151.         /// < param name="waterWords">需要添加到圖片上的文字< /param>  
  152.         /// < param name="alpha">透明度(0.1~1.0之間)< /param>  
  153.         /// < param name="position">文字顯示的位置< /param>  
  154.         /// < param name="fRewrite">是否覆蓋原圖片(如果不覆蓋,那么將在同目錄下生成一個文件名帶0607的文件)< /param>  
  155.         /// < returns>< /returns>  
  156.         public bool DrawWords(string sourcePicture, string waterWords, float alpha, ImagePosition position, bool fRewrite)  
  157.         {  
  158.             if (!System.IO.File.Exists(sourcePicture))  
  159.             {  
  160.                 _ErrMsg = "文件不存在!";  
  161.                 return false;  
  162.             }  
  163.             string fileExtension = System.IO.Path.GetExtension(sourcePicture).ToLower();  
  164.             if (fileExtension != ".gif" && fileExtension != ".jpg" && fileExtension != ".png" && fileExtension != ".bmp")  
  165.             {  
  166.                 _ErrMsg = "不是圖片文件!";  
  167.                 return false;  
  168.             }  
  169.  
  170.             Image imgPhoto = null;  
  171.             Bitmap bmPhoto = null;  
  172.             Graphics grPhoto = null;  
  173.             try 
  174.             {  
  175.                 //創建一個圖片對象用來裝載要被添加水印的圖片  
  176.                 imgPhoto = Image.FromStream(ByteToStream(SetImageToByteArray(sourcePicture)));  
  177.  
  178.                 //獲取圖片的寬和高  
  179.                 int phWidth = imgPhoto.Width;  
  180.                 int phHeight = imgPhoto.Height;  
  181.  
  182.                 //建立一個bitmap,和我們需要加水印的圖片一樣大小  
  183.                 bmPhoto = new Bitmap(phWidth, phHeight, PixelFormat.Format24bppRgb);  
  184.  
  185.                 //SetResolution:設置此 Bitmap 的分辨率  
  186.                 //這里直接將我們需要添加水印的圖片的分辨率賦給了bitmap  
  187.                 bmPhoto.SetResolution(imgPhoto.HorizontalResolution, imgPhoto.VerticalResolution);  
  188.  
  189.                 //Graphics:封裝一個 GDI+ 繪圖圖面。  
  190.                 grPhoto = Graphics.FromImage(bmPhoto);  
  191.  
  192.                 //設置圖形的品質  
  193.                 grPhoto.SmoothingMode = SmoothingMode.AntiAlias;  
  194.  
  195.                 //將我們要添加水印的圖片按照原始大小描繪(復制)到圖形中  
  196.                 grPhoto.DrawImage(  
  197.                  imgPhoto,                                           //   要添加水印的圖片  
  198.                  new Rectangle(0, 0, phWidth, phHeight), //  根據要添加的水印圖片的寬和高  
  199.                  0,                                                     //  X方向從0點開始描繪  
  200.                  0,                                                     // Y方向   
  201.                  phWidth,                                            //  X方向描繪長度  
  202.                  phHeight,                                           //  Y方向描繪長度  
  203.                  GraphicsUnit.Pixel);                              // 描繪的單位,這里用的是像素  
  204.  
  205.                 //根據圖片的大小我們來確定添加上去的文字的大小  
  206.                 //在這里我們定義一個數組來確定  
  207.                 int[] sizes = new int[] { 48, 36, 28, 24, 16, 14, 12, 10 };  
  208.  
  209.                 //字體  
  210.                 Font crFont = null;  
  211.                 //矩形的寬度和高度,SizeF有三個屬性,分別為Height高,width寬,IsEmpty是否為空  
  212.                 SizeF crSize = new SizeF();  
  213.  
  214.                 //利用一個循環語句來選擇我們要添加文字的型號  
  215.                 //直到它的長度比圖片的寬度小  
  216.                 for (int i = 0; i <  sizes.Length; i++)  
  217.                 {  
  218.                     crFont = new Font("arial", sizes[i], FontStyle.Bold);  
  219.  
  220.                     //測量用指定的 Font 對象繪制并用指定的 StringFormat 對象格式化的指定字符串。  
  221.                     crSize = grPhoto.MeasureString(waterWords, crFont);  
  222.  
  223.                     // ushort 關鍵字表示一種整數數據類型  
  224.                     if ((ushort)crSize.Width <  (ushort)phWidth)  
  225.                         break;  
  226.                 }  
  227.  
  228.                 //截邊5%的距離,定義文字顯示(由于不同的圖片顯示的高和寬不同,所以按百分比截取)  
  229.                 int yPixlesFromBottom = (int)(phHeight * .05);  
  230.  
  231.                 //定義在圖片上文字的位置  
  232.                 float wmHeight = crSize.Height;  
  233.                 float wmWidth = crSize.Width;  
  234.  
  235.                 float xPosOfWm;  
  236.                 float yPosOfWm;  
  237.  
  238.                 //設置水印的位置  
  239.                 switch (position)  
  240.                 {  
  241.                     case ImagePosition.BottomMiddle:  
  242.                         xPosOfWm = phWidth / 2;  
  243.                         yPosOfWm = phHeight - wmHeight - 10;  
  244.                         break;  
  245.                     case ImagePosition.Center:  
  246.                         xPosOfWm = phWidth / 2;  
  247.                         yPosOfWm = phHeight / 2;  
  248.                         break;  
  249.                     case ImagePosition.LeftBottom:  
  250.                         xPosOfWm = wmWidth;  
  251.                         yPosOfWm = phHeight - wmHeight - 10;  
  252.                         break;  
  253.                     case ImagePosition.LeftTop:  
  254.                         xPosOfWm = wmWidth / 2;  
  255.                         yPosOfWm = wmHeight / 2;  
  256.                         break;  
  257.                     case ImagePosition.RightTop:  
  258.                         xPosOfWm = phWidth - wmWidth - 10;  
  259.                         yPosOfWm = wmHeight;  
  260.                         break;  
  261.                     case ImagePosition.RigthBottom:  
  262.                         xPosOfWm = phWidth - wmWidth - 10;  
  263.                         yPosOfWm = phHeight - wmHeight - 10;  
  264.                         break;  
  265.                     case ImagePosition.TopMiddle:  
  266.                         xPosOfWm = phWidth / 2;  
  267.                         yPosOfWm = wmWidth;  
  268.                         break;  
  269.                     default:  
  270.                         xPosOfWm = wmWidth;  
  271.                         yPosOfWm = phHeight - wmHeight - 10;  
  272.                         break;  
  273.                 }  
  274.                 //封裝文本布局信息(如對齊、文字方向和 Tab 停靠位),顯示操作(如省略號插入和國家標準 (National) 數字替換)和 OpenType 功能。  
  275.                 StringFormat StrFormat = new StringFormat();  
  276.  
  277.                 //定義需要印的文字居中對齊  
  278.                 StrFormat.Alignment = StringAlignment.Center;  
  279.  
  280.                 //SolidBrush:定義單色畫筆。畫筆用于填充圖形形狀,如矩形、橢圓、扇形、多邊形和封閉路徑。  
  281.                 //這個畫筆為描繪陰影的畫筆,呈灰色  
  282.                 int m_alpha = Convert.ToInt32(256 * alpha);  
  283.                 SolidBrush semiTransBrush2 = new SolidBrush(Color.FromArgb(m_alpha, 0, 0, 0));  
  284.  
  285.                 //描繪文字信息,這個圖層向右和向下偏移一個像素,表示陰影效果  
  286.                 //DrawString 在指定矩形并且用指定的 Brush 和 Font 對象繪制指定的文本字符串。  
  287.                 grPhoto.DrawString(waterWords,                                    //string of text  
  288.                                            crFont,                                         //font  
  289.                                            semiTransBrush2,                            //Brush  
  290.                                            new PointF(xPosOfWm + 1, yPosOfWm + 1),  //Position  
  291.                                            StrFormat);  
  292.  
  293.                 //從四個 ARGB 分量(alpha、紅色、綠色和藍色)值創建 Color 結構,這里設置透明度為153  
  294.                 //這個畫筆為描繪正式文字的筆刷,呈白色  
  295.                 SolidBrush semiTransBrush = new SolidBrush(Color.FromArgb(153, 255, 255, 255));  
  296.  
  297.                 //第二次繪制這個圖形,建立在第一次描繪的基礎上  
  298.                 grPhoto.DrawString(waterWords,                 //string of text  
  299.                                            crFont,                                   //font  
  300.                                            semiTransBrush,                           //Brush  
  301.                                            new PointF(xPosOfWm, yPosOfWm),  //Position  
  302.                                            StrFormat);  
  303.  
  304.                 //imgPhoto是我們建立的用來裝載最終圖形的Image對象  
  305.                 //bmPhoto是我們用來制作圖形的容器,為Bitmap對象  
  306.                 imgPhoto = bmPhoto;  
  307.                 //釋放資源,將定義的Graphics實例grPhoto釋放,grPhoto功德圓滿  
  308.                 //grPhoto.Dispose();  
  309.  
  310.                 //將grPhoto保存  
  311.                 if (fRewrite)  
  312.                 {  
  313.                     imgPhoto.Save(sourcePicture);  
  314.                 }  
  315.                 else 
  316.                 {  
  317.                     // 目標圖片名稱及全路徑  
  318.                     string targetImage = sourcePicture.Replace(System.IO.Path.GetExtension(sourcePicture), "") + "_0607" + fileExtension;  
  319.                     imgPhoto.Save(targetImage);  
  320.                 }  
  321.                 //imgPhoto.Dispose();  
  322.                 return true;  
  323.             }  
  324.             catch (Exception ex)  
  325.             {  
  326.                 _ErrMsg = ex.Message;  
  327.                 return false;  
  328.             }  
  329.             finally 
  330.             {  
  331.                 if (imgPhoto != null)  
  332.                     imgPhoto.Dispose();  
  333.                 if (bmPhoto != null)  
  334.                     bmPhoto.Dispose();  
  335.                 if (grPhoto != null)  
  336.                     grPhoto.Dispose();  
  337.             }  
  338.  
  339.  
  340.         }  
  341.         #endregion  
  342.  
  343.     }  
  344. }  
  345.  

以上就是ASP.NET圖片加水印并處理水印位置和透明度的實現代碼。

本文來自wf5360308(峰)的博客。

【編輯推薦】

  1. ASP.NET(VB)應用之圖片增加水印文字淺析
  2. ASP.NET注釋使用技巧淺析
  3. ASP.NET trace的使用淺析
  4. ASP.NET trace在頁面執行中的應用淺析
  5. ASP.NET Request對象的屬性介紹
責任編輯:yangsai 來源: 百度空間
相關推薦

2009-08-12 14:10:37

asp.net分頁代碼

2009-07-29 16:06:42

圖片增加水印

2009-08-20 10:13:49

ASP.NET和C#的

2009-07-15 18:25:52

ASP.NET控件數組

2009-08-03 14:33:02

.NET平臺c#ASP.NET

2009-07-28 17:03:55

ASP.NET VB.

2009-08-10 17:17:10

ASP.NET安裝部署

2009-12-07 15:41:51

PHP圖片加水印

2015-06-23 16:47:53

ASP.NET

2016-09-06 21:09:35

Phpgd庫圖片水印

2009-08-13 17:52:27

C#數據采集

2009-08-05 16:59:55

ASP.NET組件設計

2012-04-06 13:52:58

ASP.NET

2009-08-04 11:29:14

HTML代碼ASP.NET控件

2009-07-27 14:13:56

調用c#方法Java scriptASP.NET

2009-07-20 15:44:32

ASP.NET MVC

2009-07-22 17:45:11

ASP.NET插件

2009-08-04 17:16:16

ASP.NET代碼優化

2015-03-03 13:15:19

ASP.NET大文件下載實現思路

2009-07-28 17:17:19

ASP.NET概述
點贊
收藏

51CTO技術棧公眾號

奇米影视888狠狠狠777不卡| 一道本在线观看| 天堂中文а√在线| 国产伦精品一区二区三区免费| 欧美日韩国产成人高清视频| 水蜜桃av无码| 久久精品97| 亚洲一区在线播放| 人禽交欧美网站免费| 国产理论视频在线观看| 亚洲国产裸拍裸体视频在线观看乱了中文| 亚洲欧美国产精品专区久久| 成年人三级黄色片| 97超碰在线免费| 中文字幕不卡在线观看| 风间由美久久久| 国产精品无码粉嫩小泬| 欧美日韩国产高清| 一区二区三区www| 男人添女人荫蒂国产| 久久野战av| 洋洋成人永久网站入口| 欧美日韩精品免费看| 亚洲一卡二卡在线| 亚洲国产导航| 日韩在线一区二区三区免费视频| 波多野吉衣在线视频| 欧美男男video| 91伊人久久大香线蕉| 日韩av片永久免费网站| 日韩人妻一区二区三区| 日韩护士脚交太爽了| 亚洲精品ww久久久久久p站| 狠狠干一区二区| 欧美性受xxx黑人xyx性爽| 中文字幕一区二区三区久久网站| 国产亚洲免费的视频看| 国内自拍偷拍视频| 国产欧美自拍| 色综合咪咪久久| 色婷婷777777仙踪林| 六十路在线观看| 丁香婷婷深情五月亚洲| 国产美女精彩久久| 青青草免费观看视频| 欧美~级网站不卡| 亚洲天堂免费观看| 无码人妻aⅴ一区二区三区玉蒲团| 亚洲国产尤物| 欧美香蕉大胸在线视频观看| 日韩精品一区二区在线视频 | 欧美熟妇另类久久久久久不卡| 日本亚洲最大的色成网站www| 欧美老少做受xxxx高潮| 毛片视频免费播放| 久久99视频| 亚洲国产精品人人爽夜夜爽| 免费欧美一级片| 亚洲狼人综合| 欧美色图免费看| 97xxxxx| 2021中文字幕在线| 亚洲最快最全在线视频| 亚洲高潮无码久久| 麻豆影视在线观看_| 国产日韩精品一区二区三区在线| 精品视频一区二区| 亚洲精品无码久久久| 国产精品综合一区二区三区| 成人日韩av在线| 亚洲系列第一页| 日韩不卡一二三区| 日韩av手机在线| 黄色片中文字幕| 巨乳诱惑日韩免费av| 欧美有码在线观看视频| 91视频免费网址| 在线视频精品| 日av在线播放中文不卡| 亚洲熟女综合色一区二区三区| 欧美精品18videos性欧| 欧美 日韩 国产 高清| 怡红院av在线| 一区二区国产盗摄色噜噜| 欧美日韩一级在线 | 欧美一区二区福利在线| 午夜一区二区视频| 警花av一区二区三区| 日韩小视频在线观看专区| 一本之道在线视频| 我要色综合中文字幕| 欧美成人高清电影在线| 中文字幕在线视频播放| 日韩激情啪啪| 亚洲人成电影网站| 超碰人人人人人人人| 99久久.com| 欧美黑人极品猛少妇色xxxxx| 国产无遮挡又黄又爽在线观看| 国产亚洲成人一区| 国产精品h在线观看| 亚洲综合免费视频| 国产盗摄精品一区二区三区在线 | 国产一区二区伦理片| 成人动漫在线观看视频| 亚洲色欧美另类| 国产欧美一区二区在线观看| 亚洲三区在线观看| 岛国毛片av在线| 色就色 综合激情| 91欧美视频在线| 天堂av一区| 亚洲精品永久免费| 国产67194| 亚洲欧美久久久| 91久久国产婷婷一区二区| 天天操天天干天天爽| 国产精品全国免费观看高清| 免费看欧美黑人毛片| 中文.日本.精品| 欧美不卡激情三级在线观看| av黄色在线免费观看| 女同性一区二区三区人了人一| 青青草99啪国产免费| 国产三级午夜理伦三级| 99国产麻豆精品| 做爰高潮hd色即是空| 麻豆网站免费在线观看| 制服丝袜亚洲色图| 免费在线观看你懂的| 欧美激情四色| 国产精品久久一| 可以免费看毛片的网站| 综合激情成人伊人| 日韩av资源在线| 哺乳挤奶一区二区三区免费看| 在线成人激情视频| 欧美激情亚洲综合| 国产精品1区2区| 一区不卡字幕| free欧美| 日韩精品极品视频| 久草视频中文在线| 精品系列免费在线观看| 久久精品人成| 日韩三级免费| 欧美唯美清纯偷拍| av男人的天堂av| 亚洲影院免费| 久久99导航| a毛片不卡免费看片| 欧美一卡在线观看| 日本黄色免费片| 免费高清在线视频一区·| 蜜桃999成人看片在线观看| 俄罗斯一级**毛片在线播放| 日韩欧美一级二级三级久久久| 欧美福利在线视频| 奇米影视7777精品一区二区| 欧美中日韩免费视频| 三级在线观看视频| 亚洲精品电影网站| 日韩欧美大片在线观看| 成+人+亚洲+综合天堂| 国产制服91一区二区三区制服| 国产一区二区三区精品在线观看| 中文字幕日韩欧美| 中文字幕日本人妻久久久免费| 久久久久国产精品免费免费搜索| 玩弄中年熟妇正在播放| 国产精品美女在线观看直播| 午夜精品久久久久久久99热| 天天爽夜夜爽夜夜爽| 图片区日韩欧美亚洲| 艳妇乳肉亭妇荡乳av| 国产精品亚洲欧美| 久久综合一区| 台湾佬成人网| 最新日韩中文字幕| 一级黄色片免费| 亚洲美腿欧美偷拍| 中文字幕第九页| 99视频+国产日韩欧美| 久久综合九色综合久99| 亚洲第一会所| 久久久国产在线视频| 精品国产无码一区二区| 亚洲高清免费视频| 潘金莲一级淫片aaaaa| 亚洲国产老妈| 国产精品福利视频| 都市激情亚洲一区| 深夜福利日韩在线看| 99精品在线视频观看| 亚洲主播在线观看| 国产精品无码一区二区三区免费| 久久国产精品毛片| 在线不卡视频一区二区| 成人激情久久| 欧美国产日韩免费| 午夜18视频在线观看| 色综合av在线| 三级黄色录像视频| 国产精品一区二区久激情瑜伽| 无码专区aaaaaa免费视频| 亚洲视频分类| 91久久精品在线| 乱馆动漫1~6集在线观看| 中文字幕欧美精品在线| 国产极品久久久| 日韩欧美国产视频| 婷婷伊人五月天| 91美女精品福利| 国内av免费观看| 亚洲欧美日韩国产一区| 老汉色影院首页| 亚洲另类av| 91黄色国产视频| 美女18一级毛片一品久道久久综合| 久久亚洲精品一区| 欧洲毛片在线| 日韩三级视频在线看| 日日夜夜操视频| 亚洲一区二区三区中文字幕| 中文字幕av久久爽一区| 国产suv一区二区三区88区| 国产精品igao| 亚洲伦理一区| a级网站在线观看| 国产一区二区三区探花| 粉嫩av一区二区三区免费观看| 国产成人免费| 日韩美女写真福利在线观看| 免费电影视频在线看| xxx成人少妇69| 国产三级视频在线| 亚洲精品美女久久| a天堂在线视频| 欧美日韩精品一区二区| 国产成人无码精品久在线观看 | 喷水视频在线观看| 国产一区二区成人久久免费影院| 免费激情视频在线观看| 99国产精品视频免费观看一公开 | 在线观看日本一区二区| 亚洲欧美日韩视频二区| 国产精品久久久久9999爆乳| 66久久国产| 一区在线电影| 欧美午夜精品一区二区三区电影| 精品国产一区二区三| 2020最新国产精品| 99re6在线| 一级欧美视频| 国产精品爽爽爽| 电影一区二区三区| 国内精品伊人久久| 国产理论在线| 欧美精品久久久久久久久| 91极品在线| 欧美成人黑人xx视频免费观看| 8888四色奇米在线观看| 在线一区二区日韩| 在线视频二区| 色久欧美在线视频观看| 草草影院在线观看| 这里精品视频免费| 色的视频在线免费看| 久久久999国产| 国内外激情在线| 欧美福利在线观看| 成人黄色动漫| 日产精品久久久一区二区福利| 韩国久久久久久| 国产精品三级美女白浆呻吟| 成人午夜sm精品久久久久久久| 国产精品三级网站| 激情久久免费视频| 国产精品手机视频| 日韩欧美中文字幕电影| 欧美日韩亚洲免费| 日韩成人免费| 18视频在线观看娇喘| 98精品久久久久久久| 日韩精品久久一区二区三区| 欧美日韩老妇| 在线一区亚洲| 亚洲电影在线| 亚洲欧美另类动漫| 激情图区综合网| 激情小说欧美色图| 久久只精品国产| 欧美激情久久久久久久| 亚洲欧美另类综合偷拍| 日本三级2019| 欧美性受xxxx黑人xyx性爽| 亚洲一区二区影视| 日韩欧美一二三区| 日本a一级在线免费播放| 中文字幕日韩精品在线| 伊人福利在线| 日韩av电影中文字幕| 99国内精品久久久久| 国新精品乱码一区二区三区18| 精品久久久中文字幕| 美女黄色片网站| 香蕉成人久久| 免费黄频在线观看| 91色婷婷久久久久合中文| 久久久视频6r| 亚洲美女区一区| 黄网在线观看视频| 欧美午夜精品一区二区三区| 亚洲国产www| 这里只有精品在线播放| 国产在线xxx| 国产精品一区二区久久精品| 风间由美一区二区av101| 亚洲国产欧美不卡在线观看| 国内精品美女在线观看| 久草福利视频在线| 成人av网站在线观看| 永久av免费网站| 一本到一区二区三区| 性生活视频软件| 中文字幕欧美专区| 欧美男人天堂| 成人国产一区二区| 91精品国产91久久久久久黑人| 午夜精品久久久久久久无码| 国产精品一区二区男女羞羞无遮挡 | 成年人性生活视频| 亚洲国产精品二十页| 国产精品成人久久| 91精品国产福利| wwwww在线观看免费视频| 97在线看福利| 日韩一区二区三区精品| 一区二区三区国产福利| 视频精品一区二区| 双性尿奴穿贞c带憋尿| 亚洲一区二区三区四区在线观看| 91久久精品无码一区二区| 国产亚洲在线播放| 一本大道色婷婷在线| 国产精品乱码视频| 91嫩草亚洲精品| 国产乱子伦农村叉叉叉| 狠狠色狠狠色综合| 亚洲图片另类小说| 午夜精品视频一区| 性生活视频软件| 欧美激情奇米色| 一区二区精彩视频| 青青在线视频免费观看| 久久69国产一区二区蜜臀| 91导航在线观看| 欧美羞羞免费网站| av在线天堂| 国产三级精品网站| 国产精品88久久久久久| 欧美成人福利在线观看| 欧美激情综合在线| 亚洲天堂视频网| 久久九九免费视频| 欧美精品三级在线| 日本老太婆做爰视频| 国产成人在线电影| 久久久久久久久艹| 精品福利一区二区三区 | 久久a爱视频| 妞干网在线视频观看| 91蜜桃在线免费视频| av一级在线观看| 中文字幕日韩高清| 99国内精品久久久久| 91免费版看片| av在线播放不卡| 91丝袜一区二区三区| 亚洲久久久久久久久久久| 亚洲欧美韩国| 日本一区不卡| 黑人精品欧美一区二区蜜桃| 九九视频免费在线观看| 亚洲第一黄色网| 亚洲精品成人图区| 日韩一区免费观看| 韩国毛片一区二区三区| 久久婷婷国产麻豆91| 精品视频中文字幕| 日本综合视频| 男人c女人视频| 久久亚洲精品国产精品紫薇| 最近中文字幕在线视频| 欧美精品在线免费播放| 欧美调教视频| 色一情一区二区三区| 一区二区三区中文在线观看| 亚洲欧洲视频在线观看| 国产精品一区专区欧美日韩|