WPF圖片控件的旋轉、縮放、翻轉

WPF中對圖片進行旋轉是應用RotateTransform類,而進行縮放和翻轉則是應用ScaleTransform類。
旋轉:           
               RotateTransform rotateTransform = new RotateTransform(90);//90度
               imgCtl.RenderTransform = rotateTransform;//圖片控件旋轉
可以通過CenterX和CenterY指定旋轉中心,默認旋轉中心是原點。

縮放、翻轉: 
                ScaleTransform scaleTransform = new ScaleTransform();
                scaleTransform.ScaleX = -1;
                imgCtl.RenderTransform = scaleTransform;
這是實現圖片左右翻轉,通過屬性ScaleX改變,當其值爲正時實現水平方向的縮放,其值爲負時實現翻轉和縮放,ScaleY同理。

若要同時實現旋轉、縮放、翻轉,則要利用到TransformGroup類,它能將這些變換整合到一起,如下:
                TransformGroup transformGroup = new TransformGroup();             

                ScaleTransform scaleTransform = new ScaleTransform();
                scaleTransform.ScaleX = -1;
                transformGroup.Children.Add(scaleTransform);
              
                RotateTransform rotateTransform = new RotateTransform(angle * 180 / 3.142);
                transformGroup.Children.Add(rotateTransform);
                imgCtl.RenderTransform = transformGroup;
這樣能實現物體運動時根據方向旋轉和翻轉。
發佈了64 篇原創文章 · 獲贊 6 · 訪問量 15萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章