當前位置:首頁 > IT技術(shù) > Windows編程 > 正文

圖像旋轉(zhuǎn)的C#示例
2021-08-08 13:21:24

圖像旋轉(zhuǎn)的C#示例_重置private?void?RotateTransform_Click(object?sender,?System.EventArgs?e)
圖像旋轉(zhuǎn)的C#示例_圖片顯示_02????????{
圖像旋轉(zhuǎn)的C#示例_重置_03????????????Graphics?graphics=this.CreateGraphics();
圖像旋轉(zhuǎn)的C#示例_重置_03????????????graphics.Clear(Color.White);
圖像旋轉(zhuǎn)的C#示例_重置_03
圖像旋轉(zhuǎn)的C#示例_重置_03????????????//裝入圖片
圖像旋轉(zhuǎn)的C#示例_重置_03????????????Bitmap?image=new?Bitmap("nemo.bmp");
圖像旋轉(zhuǎn)的C#示例_重置_03
圖像旋轉(zhuǎn)的C#示例_重置_03????????????//獲取當前窗口的中心點
圖像旋轉(zhuǎn)的C#示例_重置_03????????????Rectangle?rect=new?Rectangle(0,0,this.ClientSize.Width,this.ClientSize.Height);
圖像旋轉(zhuǎn)的C#示例_重置_03????????????PointF?center=new?PointF(rect.Width/2,rect.Height/2);
圖像旋轉(zhuǎn)的C#示例_重置_03
圖像旋轉(zhuǎn)的C#示例_重置_03????????????float?offsetX=0;
圖像旋轉(zhuǎn)的C#示例_重置_03????????????float?offsetY=0;
圖像旋轉(zhuǎn)的C#示例_重置_03????????????offsetX=center.X-image.Width/2;
圖像旋轉(zhuǎn)的C#示例_重置_03????????????offsetY=center.Y-image.Height/2;
圖像旋轉(zhuǎn)的C#示例_重置_03????????????//構(gòu)造圖片顯示區(qū)域:讓圖片的中心點與窗口的中心點一致
圖像旋轉(zhuǎn)的C#示例_重置_03????????????RectangleF?picRect=new?RectangleF(offsetX,offsetY,image.Width,image.Height);
圖像旋轉(zhuǎn)的C#示例_重置_03????????????PointF?Pcenter=new?PointF(picRect.X+picRect.Width/2,
圖像旋轉(zhuǎn)的C#示例_重置_03????????????????picRect.Y+picRect.Height/2);
圖像旋轉(zhuǎn)的C#示例_重置_03????
圖像旋轉(zhuǎn)的C#示例_重置_03????????????//讓圖片繞中心旋轉(zhuǎn)一周
圖像旋轉(zhuǎn)的C#示例_重置_03????????????for(int?i=0;i<361;i+=10)
圖像旋轉(zhuǎn)的C#示例_圖片顯示_24????????????{
圖像旋轉(zhuǎn)的C#示例_重置_03????????????????//?繪圖平面以圖片的中心點旋轉(zhuǎn)
圖像旋轉(zhuǎn)的C#示例_重置_03????????????????graphics.TranslateTransform(Pcenter.X,?Pcenter.Y);
圖像旋轉(zhuǎn)的C#示例_重置_03????????????????graphics.RotateTransform(i);
圖像旋轉(zhuǎn)的C#示例_重置_03????????????????//恢復(fù)繪圖平面在水平和垂直方向的平移
圖像旋轉(zhuǎn)的C#示例_重置_03????????????????graphics.TranslateTransform(-Pcenter.X,?-Pcenter.Y);
圖像旋轉(zhuǎn)的C#示例_重置_03????????????????//繪制圖片并延時
圖像旋轉(zhuǎn)的C#示例_重置_03????????????????graphics.DrawImage(image,picRect);????
圖像旋轉(zhuǎn)的C#示例_重置_03????????????????Thread.Sleep(100);
圖像旋轉(zhuǎn)的C#示例_重置_03????????????????//重置繪圖平面的所有變換
圖像旋轉(zhuǎn)的C#示例_重置_03????????????????graphics.ResetTransform();
圖像旋轉(zhuǎn)的C#示例_圖片顯示_35????????????}
圖像旋轉(zhuǎn)的C#示例_圖片顯示_36 ???????}?

本文摘自 :https://blog.51cto.com/u

開通會員,享受整站包年服務(wù)立即開通 >