亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

C#正方形圖片的繪制方法

2019-10-29 19:58:31
字體:
來源:轉載
供稿:網友

本文實例為大家分享了C#繪制正方形圖片的的具體代碼,供大家參考,具體內容如下

using System;using System.Collections.Generic;using System.Drawing;using System.Drawing.Drawing2D;using System.Drawing.Imaging;using System.Linq;using System.Text;using System.Threading.Tasks;namespace treads{  /// <summary>  /// 制作小正方形  /// </summary>  class Class3  {    private string srcFileName = @"x";//獲取圖片的路徑    private string srcFileName1 = @"x";//要保持圖片的新路徑       /// <summary>    /// 保存圖片    /// </summary>    /// <param name="image">Image 對象</param>    /// <param name="savePath">保存路徑</param>    /// <param name="ici">指定格式的編解碼參數</param>    private static void SaveImage(Image image, string savePath, ImageCodecInfo ici)    {      //設置 原圖片 對象的 EncoderParameters 對象      EncoderParameters parameters = new EncoderParameters(1);      parameters.Param[0] = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, ((long)100));      image.Save(savePath, ici, parameters);      parameters.Dispose();    }    /// <summary>    /// 獲取圖像編碼解碼器的所有相關信息    /// </summary>    /// <param name="mimeType">包含編碼解碼器的多用途網際郵件擴充協議 (MIME) 類型的字符串</param>    /// <returns>返回圖像編碼解碼器的所有相關信息</returns>    private static ImageCodecInfo GetCodecInfo(string mimeType)    {      ImageCodecInfo[] CodecInfo = ImageCodecInfo.GetImageEncoders();      foreach (ImageCodecInfo ici in CodecInfo)      {        if (ici.MimeType == mimeType)          return ici;      }      return null;    }    /// <summary>    /// 計算新尺寸    /// </summary>    /// <param name="width">原始寬度</param>    /// <param name="height">原始高度</param>    /// <param name="maxWidth">最大新寬度</param>    /// <param name="maxHeight">最大新高度</param>    /// <returns></returns>    private static Size ResizeImage(int width, int height, int maxWidth, int maxHeight)    {      //此次2012-02-05修改過=================      if (maxWidth <= 0)        maxWidth = width;      if (maxHeight <= 0)        maxHeight = height;      //以上2012-02-05修改過=================      decimal MAX_WIDTH = (decimal)maxWidth;      decimal MAX_HEIGHT = (decimal)maxHeight;      decimal ASPECT_RATIO = MAX_WIDTH / MAX_HEIGHT;      int newWidth, newHeight;      decimal originalWidth = (decimal)width;      decimal originalHeight = (decimal)height;      if (originalWidth > MAX_WIDTH || originalHeight > MAX_HEIGHT)      {        decimal factor;        // determine the largest factor         if (originalWidth / originalHeight > ASPECT_RATIO)        {          factor = originalWidth / MAX_WIDTH;          newWidth = Convert.ToInt32(originalWidth / factor);          newHeight = Convert.ToInt32(originalHeight / factor);        }        else        {          factor = originalHeight / MAX_HEIGHT;          newWidth = Convert.ToInt32(originalWidth / factor);          newHeight = Convert.ToInt32(originalHeight / factor);        }      }      else      {        newWidth = width;        newHeight = height;      }      return new Size(newWidth, newHeight);    }    /// <summary>    /// 得到圖片格式    /// </summary>    /// <param name="name">文件名稱</param>    /// <returns></returns>    public static ImageFormat GetFormat(string name)    {      string ext = name.Substring(name.LastIndexOf(".") + 1);      switch (ext.ToLower())      {        case "jpg":        case "jpeg":          return ImageFormat.Jpeg;        case "bmp":          return ImageFormat.Bmp;        case "png":          return ImageFormat.Png;        case "gif":          return ImageFormat.Gif;        default:          return ImageFormat.Jpeg;      }    }       /// <summary>    /// 制作小正方形    /// </summary>    /// <param name="image">圖片對象</param>    /// <param name="newFileName">新地址</param>    /// <param name="newSize">長度或寬度</param>    public static void MakeSquareImage(Image image, string newFileName, int newSize)    {      int i = 0;      int width = image.Width;      int height = image.Height;      if (width > height)        i = height;      else        i = width;      Bitmap b = new Bitmap(newSize, newSize);      try      {        Graphics g = Graphics.FromImage(b);        //設置高質量插值法        g.InterpolationMode = InterpolationMode.HighQualityBicubic;        //設置高質量,低速度呈現平滑程度        g.SmoothingMode = SmoothingMode.AntiAlias;        g.PixelOffsetMode = PixelOffsetMode.HighQuality;        //清除整個繪圖面并以透明背景色填充        g.Clear(Color.Transparent);        if (width < height)          g.DrawImage(image, new Rectangle(0, 0, newSize, newSize), new Rectangle(0, (height - width) / 2, width, width), GraphicsUnit.Pixel);        else          g.DrawImage(image, new Rectangle(0, 0, newSize, newSize), new Rectangle((width - height) / 2, 0, height, height), GraphicsUnit.Pixel);        SaveImage(b, newFileName, GetCodecInfo("image/" + GetFormat(newFileName).ToString().ToLower()));      }      finally      {        image.Dispose();        b.Dispose();      }    }    /// <summary>    /// 制作小正方形    /// </summary>    /// <param name="fileName">圖片文件名</param>    /// <param name="newFileName">新地址</param>    /// <param name="newSize">長度或寬度</param>    public static void MakeSquareImage(string fileName,string newFileName, int newSize)    {      MakeSquareImage(Image.FromFile(fileName), newFileName, newSize);    }  }}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到c#教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
一区二区在线视频| 日本高清+成人网在线观看| 在线视频日韩精品| 亚洲国产成人久久综合一区| 992tv在线成人免费观看| 日韩视频在线观看免费| 国产精品自拍小视频| 国产精品视频内| 波霸ol色综合久久| 日韩av不卡电影| 国产精品亚洲激情| 亚洲一区久久久| 亚洲一区二区久久久久久| 日韩av免费看| 国产精品18久久久久久麻辣| 日本sm极度另类视频| 国产免费观看久久黄| 91国产美女视频| www.久久久久久.com| 亚洲欧美日本伦理| 欧美激情在线狂野欧美精品| 日韩av在线网页| 精品福利一区二区| 亚洲丝袜一区在线| 国产日韩欧美一二三区| 欧美黑人一级爽快片淫片高清| 亚洲性生活视频在线观看| 国产欧美久久一区二区| 亚洲丁香婷深爱综合| 日本国产一区二区三区| 亚洲天堂免费视频| 亚洲免费av电影| 亚洲视频精品在线| 日韩av色在线| 国产精品青草久久久久福利99| **欧美日韩vr在线| 欧美日韩亚洲精品一区二区三区| 国模吧一区二区三区| 日韩大片免费观看视频播放| 在线电影av不卡网址| 国产精品露脸自拍| 精品动漫一区二区| 日韩久久午夜影院| 日本伊人精品一区二区三区介绍| 欧美激情久久久久久| 国产一区二区三区在线观看网站| 91极品女神在线| 日韩av在线免费观看| 91免费看片在线| 欧美福利在线观看| 亚洲毛片一区二区| 欧美大肥婆大肥bbbbb| 欧美性猛交丰臀xxxxx网站| 色视频www在线播放国产成人| 欧美日韩亚洲精品一区二区三区| 日韩一中文字幕| 欧美俄罗斯乱妇| 77777少妇光屁股久久一区| 欧美视频13p| 欧美怡春院一区二区三区| 国产精品久久91| 91精品国产免费久久久久久| 成人欧美在线视频| 美女啪啪无遮挡免费久久网站| 亚洲日本欧美日韩高观看| 欧洲亚洲妇女av| 欧美亚洲成人网| 日韩欧美国产网站| 国产精品视频播放| 欧美风情在线观看| 欧美视频中文字幕在线| 欧美日韩视频免费播放| 亚洲国产精品99| 久久影院资源网| 97久久久久久| 一区二区三区动漫| 精品久久久中文| 日韩中文有码在线视频| 成人欧美一区二区三区在线湿哒哒| 成人午夜在线视频一区| 97av在线视频免费播放| 欧美精品一区二区免费| 国语自产精品视频在免费| 国产精品高清免费在线观看| 青草青草久热精品视频在线网站| 久久精品精品电影网| 久久99视频精品| 97视频在线观看免费高清完整版在线观看| 精品露脸国产偷人在视频| 亚洲欧美中文日韩v在线观看| 国产一区二区av| 最新国产成人av网站网址麻豆| 中文国产成人精品久久一| 91国产一区在线| 热久久这里只有| 欧美乱大交xxxxx| 国产视频亚洲视频| 国产精品第一视频| 久久久国产一区二区| 日韩中文在线中文网三级| 中文字幕精品一区久久久久| 国产精品视频网站| 日韩成人在线电影网| 亚洲高清免费观看高清完整版| 精品国产成人av| 日本久久久a级免费| 欧美最顶级丰满的aⅴ艳星| 日韩资源在线观看| 国产丝袜一区二区三区免费视频| 亚洲一区二区自拍| 亚洲国产一区二区三区在线观看| 色偷偷88888欧美精品久久久| 97国产精品免费视频| 午夜精品视频网站| 国产精品精品一区二区三区午夜版| 亚洲最大成人网色| 久久网福利资源网站| 亚洲а∨天堂久久精品9966| 国产精品影片在线观看| 中文字幕日韩在线视频| 97成人精品视频在线观看| 亚洲精品电影在线观看| 欧美洲成人男女午夜视频| 97精品在线视频| 久久久久久一区二区三区| 欧美一区三区三区高中清蜜桃| 日韩久久免费视频| 亚洲电影免费观看高清完整版在线观看| 久久久久久久影视| 精品久久久视频| 成人精品一区二区三区电影免费| 97在线视频免费观看| 综合网中文字幕| 亚洲欧美色图片| 亚洲视频在线观看网站| 57pao成人国产永久免费| 国产日韩欧美另类| 国产精品嫩草视频| 国产精品福利网| 国产亚洲一级高清| 国产日韩欧美成人| 日本一欧美一欧美一亚洲视频| 精品视频在线观看日韩| 国产精品第10页| 国产日韩欧美日韩| 91在线色戒在线| 日韩最新免费不卡| 亚洲第一色中文字幕| 久热精品视频在线| 欧美在线一级视频| 国产免费成人av| 亚洲欧美激情视频| 中文字幕在线国产精品| 5278欧美一区二区三区| 欧美黑人一区二区三区| 国产有码一区二区| 国产精品久久久久久久午夜| 亚洲影院色无极综合| 国产精品中文在线| 国产欧美精品va在线观看| 欧美最猛性xxxxx免费| 国产丝袜一区二区| 中文字幕欧美精品日韩中文字幕| 4438全国成人免费|