基本信息
源码名称:WPF 图片旋转效果示例源码(非常炫)
源码大小:20.25M
文件格式:.rar
开发语言:C#
更新时间:2019-09-27
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍
演示分割旋转、组件旋转方式。
1、分割旋转如需对组件窗体进行分割,可以将其转换为图像进行旋转,完毕后再显示组件窗体;
转为图像可修改如下代码:可以自行更改换为BitmapSource
private void SaveControlImage(FrameworkElement control, string filename)
        {
            Rect rect = VisualTreeHelper.GetDescendantBounds(control);
            DrawingVisual dv = new DrawingVisual();
            using (DrawingContext ctx = dv.RenderOpen())
            {
                VisualBrush brush = new VisualBrush(control);
                ctx.DrawRectangle(brush, null, new Rect(rect.Size));
            }
            int width = (int)control.ActualWidth;
            int height = (int)control.ActualHeight;
            RenderTargetBitmap rtb = new RenderTargetBitmap(width, height, 96, 96, PixelFormats.Pbgra32);
            rtb.Render(dv);
            PngBitmapEncoder encoder = new PngBitmapEncoder();
            encoder.Frames.Add(BitmapFrame.Create(rtb));
            using (FileStream fs = new FileStream(filename,FileMode.Create, FileAccess.Write, FileShare.None))
            {
                encoder.Save(fs);
            }
        }
这里只演示图像。

2、组件旋转为整体旋转,可当做窗体,加入其它组件。旋转如果加入阴影(DropShadowEffect)动画将不流畅出现抖动,这里通过图像方式制作阴影(CustomShadow.cs),
未使用DropShadowEffect方式,动画较为流畅。

3、设置帧率:见App.xaml、App.cs文件
private void Application_Startup(object sender, StartupEventArgs e)
        {
            Timeline.DesiredFrameRateProperty.OverrideMetadata(
                typeof(Timeline),
                new FrameworkPropertyMetadata { DefaultValue = null }
                );
        }
可将null设置为60、90、100等。
画面流畅时看不出来,将null设置为5、10等较小值可见其作用。


4、动画按照对象原始大小显示方法,代码里查看


viewport3D = new Viewport3D();