麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > C# > 正文

使用C#繪制圖片的幾個方法

2023-05-14 16:26:28
字體:
來源:轉載
供稿:網友

本文介紹了使用C#繪制圖片的幾個方法,主要解決了以下幾個問題:

1)如何獲取.gif圖片中的各個幀?

2)如何獲取圖片的縮略圖?

3)如何“截取”圖片的指定區域?

using System.Drawing;  
using System.Drawing.Drawing2D;  
using System.Drawing.Imaging;  
 
public class ImageHelper  
{  
    /// <summary><SUMMARY></SUMMARY>  
    /// 獲取圖片中的各幀  
    /// </summary>  
    /// <param name="pPath"><PARAM name="pPath" />圖片路徑</param>  
    /// <param name="pSavePath"><PARAM name="pSavePath" />保存路徑</param>  
    public void GetFrames(string pPath, string pSavedPath)  
    {  
        Image gif = Image.FromFile(pPath);  
        FrameDimension fd = new FrameDimension(gif.FrameDimensionsList[0]);  
 
        //獲取幀數(gif圖片可能包含多幀,其它格式圖片一般僅一幀)  
        int count = gif.GetFrameCount(fd);  
 
        //以Jpeg格式保存各幀   
        for (int i = 0; i < count; i++)  
        {  
            gif.SelectActiveFrame(fd, i);  
            gif.Save(pSavedPath + "//frame_" + i + ".jpg", ImageFormat.Jpeg);  
        }  
    }  
 
    /// <summary><SUMMARY></SUMMARY>  
    /// 獲取圖片縮略圖  
    /// </summary>  
    /// <param name="pPath"><PARAM name="pPath" />圖片路徑</param>  
    /// <param name="pSavePath"><PARAM name="pSavePath" />保存路徑</param>  
    /// <param name="pWidth"><PARAM name="pWidth" />縮略圖寬度</param>  
    /// <param name="pHeight"><PARAM name="pHeight" />縮略圖高度</param>  
    /// <param name="pFormat"><PARAM name="pFormat" />保存格式,通常可以是jpeg</param>  
    public void GetSmaller(string pPath, string pSavedPath, int pWidth, int pHeight)  
    {  
        try 
        {  
            Image smallerImg;  
            Image originalImg = Image.FromFile(pPath);  
            Image.GetThumbnailImageAbort callback = new Image.GetThumbnailImageAbort(ThumbnailCallback);  
            smallerImg = originalImg.GetThumbnailImage(pWidth, pHeight, callback, IntPtr.Zero);  
            smallerImg.Save(pSavedPath + "//smaller.jpg", ImageFormat.Jpeg);  
        }  
        catch (Exception x)  
        {  
            //  
        }  
    }  
 
    /// <summary><SUMMARY></SUMMARY>  
    /// 獲取圖片指定部分  
    /// </summary>  
    /// <param name="pPath"><PARAM name="pPath" />圖片路徑</param>  
    /// <param name="pSavePath"><PARAM name="pSavePath" />保存路徑</param>  
    /// <param name="pPartStartPointX"><PARAM name="pPartStartPointX" />目標圖片開始繪制處的坐標X值(通常為)</param>  
    /// <param name="pPartStartPointY"><PARAM name="pPartStartPointY" />目標圖片開始繪制處的坐標Y值(通常為)</param>  
    /// <param name="pPartWidth"><PARAM name="pPartWidth" />目標圖片的寬度</param>  
    /// <param name="pPartHeight"><PARAM name="pPartHeight" />目標圖片的高度</param>  
    /// <param name="pOrigStartPointX"><PARAM name="pOrigStartPointX" />原始圖片開始截取處的坐標X值</param>  
    /// <param name="pOrigStartPointY"><PARAM name="pOrigStartPointY" />原始圖片開始截取處的坐標Y值</param>  
    /// <param name="pFormat"><PARAM name="pFormat" />保存格式,通常可以是jpeg</param>  
    public void GetPart(string pPath, string pSavedPath, int pPartStartPointX, int pPartStartPointY, int pPartWidth, int pPartHeight, int pOrigStartPointX, int pOrigStartPointY)  
    {  
        Image originalImg = Image.FromFile(pPath);  
 
        Bitmap partImg = new Bitmap(pPartWidth, pPartHeight);  
        Graphics graphics = Graphics.FromImage(partImg);  
        Rectangle destRect = new Rectangle(new Point(pPartStartPointX, pPartStartPointY), new Size(pPartWidth, pPartHeight));//目標位置  
        Rectangle origRect = new Rectangle(new Point(pOrigStartPointX, pOrigStartPointY), new Size(pPartWidth, pPartHeight));//原圖位置(默認從原圖中截取的圖片大小等于目標圖片的大小)  
 
        graphics.DrawImage(originalImg, destRect, origRect, GraphicsUnit.Pixel);  
        partImg.Save(pSavedPath + "//part.jpg", ImageFormat.Jpeg);  
    }  
 
    public bool ThumbnailCallback()  
    {  
        return false;  
    }  
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 超碰97国产在线 | 免费一级a毛片免费观看 | 亚洲一区二区三区视频 | 97se亚洲综合在线韩国专区福利 | 日本在线不卡一区二区 | 美女黄网站免费观看 | 国产一区二区三区在线视频 | 欧美一级片在线 | 久久久一区二区精品 | 日日做夜夜操 | 中文字幕在线视频日本 | 久久精品亚洲精品国产欧美kt∨ | 黄色特级一级片 | 久久精品久 | 国产精品伊人久久 | 黄色欧美精品 | 欧美一级黄色片在线观看 | 91精品动漫在线观看 | 小视频免费在线观看 | 中国美女一级黄色大片 | 国产一区二区在线免费观看 | 欧美a欧美| 一级在线免费观看视频 | 日本精品一二区 | 91av视频大全 | 欧美中文字幕一区二区三区亚洲 | 国产一级大片在线观看 | 成年免费视频黄网站在线观看 | 国产成人精品午夜视频' | 亚洲一区二区三区四区精品 | 欧美女同hd | 少妇一级淫片免费看 | 午夜视 | 七首小情歌泰剧在线播放 | 午夜色视频在线观看 | 最新中文字幕在线 | 中文字幕一二三区芒果 | 最新中文字幕免费视频 | www.com超碰| 亚洲特黄a级毛片在线播放 久久久入口 | 久久精品网站视频 |