首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C# 圖片動畫顯示技巧(八):任意角度旋轉與橢圓裁切

     編輯:關於C語言

任意角度旋轉:Graphics.RotateTransform


private void btnRotate_Click(object sender, EventArgs e)
{
    Graphics g = panel1.CreateGraphics();
    float angle = 0;

    while (angle < 360)
    {
        using (var brush = new TextureBrush(MyBitmap))
        {
            panel1.Refresh();
            brush.RotateTransform(angle);
            g.FillRectangle(brush, 0, 0, ClientRectangle.Width, ClientRectangle.Height);
        }
        angle += 0.5f;
        Thread.Sleep(50);
    }
}

TextureBrush 將圖片作為紋理填充,配合 RotateTransform 旋轉紋理座標系,產生平滑旋轉動畫。

橢圓裁切顯示:Graphics.FillEllipse


private void btnEllipse_Click(object sender, EventArgs e)
{
    panel1.Refresh();
    Graphics g = panel1.CreateGraphics();
    using (var brush = new TextureBrush(MyBitmap))
    {
        g.FillEllipse(brush, panel1.ClientRectangle);
    }
}

FillEllipse 在矩形區域內繪製內切橢圓,搭配 TextureBrush 達成橢圓裁切效果。

核心類別回顧

類別用途
Graphics繪圖介面,提供 RotateTransform、FillEllipse、DrawImage 等
TextureBrush以圖片為紋理的筆刷,支援旋轉、縮放、平移變換
Bitmap像素資料容器,提供 Clone、RotateFlip、GetPixel 等
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved