惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

S
SegmentFault 最新的问题
J
Java Code Geeks
V
V2EX
Blog — PlanetScale
Blog — PlanetScale
博客园 - 司徒正美
Hugging Face - Blog
Hugging Face - Blog
F
Fortinet All Blogs
aimingoo的专栏
aimingoo的专栏
B
Blog
A
About on SuperTechFans
有赞技术团队
有赞技术团队
月光博客
月光博客
Microsoft Azure Blog
Microsoft Azure Blog
阮一峰的网络日志
阮一峰的网络日志
腾讯CDC
美团技术团队
大猫的无限游戏
大猫的无限游戏
爱范儿
爱范儿
N
Netflix TechBlog - Medium
C
Check Point Blog
Recent Announcements
Recent Announcements
博客园 - Franky
博客园 - 叶小钗
T
Tailwind CSS Blog

博客园 - davin

Beginning Asp.Net Security 读书笔记-----XSS phonegap3.0+HTMLl5 开发 ipad app 总结 移动支付-修复FireFox在android移动设备下面的Session 丢失的问题 Window.history.forward(1) 阻止页面后退详解 Pro WPF and Silverlight MVVM:第5章 Event and Command 读书笔记 Pro WPF and Silverlight MVVM 第4章ViewModel 读书笔记 Silverlight4:Devexpress Report Useful rules for compatible with FF,safari and ie8 Entity Framework 4.0 FK Properties && FK Associations Entity Framework 4.0 recipes 读书笔记2 ExecuteStoreQuery() Entity Framework 4.0 Recipes 读书笔记1 EDM中的 Complex Type sqlserver2008 + team foundation server 2008 sp1 silverlight animation 读书笔记(4)三角函数 silverlight animation 读书笔记(3)坐标与向量 foundation silverligh3 animation 读书笔记<1>transform 在silverlight中打开调用外部程序的几种方式 Entity Framework object && Json 序列化的问题 silverlight3:(ItemControl 的)UI Virtualization SharpZipLib 数据压缩
silverlight animation 读书笔记<2>模糊, 裁剪,拖拽
davin · 2010-08-23 · via 博客园 - davin

foundation silverligh3 animation 书中前3章讲述基本的transform,blur,这次读书笔记的内容就是图片效果(image effect),裁剪(clippingpath),拖拽(draganddrop)这几个动画效果。

图片效果:,在blend中的Appearance标签下 选择Effect new,弹出对话框,可以看到BlurEffert,DropShadowEffec,

图中的效果就是图片的模糊的效果

clippingpath(裁剪):用一个图形去裁剪另外一个。创建一个clippingpath有3种方式,

1.使用code-behind文件,有blend,这种方式一般不太会用得到

2.在blend中的画板上选择一个你想裁剪的对象然后去Ctrl-click第二个对象

3.直接在Xaml中创建裁剪路径是创建一个裁剪区域。

这章图片的大小是320*240,被一个80*60的矩形裁剪为16个小的矩形。在xmal也面有16个这样的代码段

    <Image Width="320" Height="240" Source="beeFlower640x480.jpg" Stretch="Fill" x:Name="Row0Col1" RenderTransformOrigin="0.5,0.5" Canvas.Top="1">
                <Image.RenderTransform>
                    <TransformGroup>
                        <ScaleTransform/>
                        <SkewTransform/>
                        <RotateTransform/>
                        <TranslateTransform/>
                    </TransformGroup>
                </Image.RenderTransform>
                <Image.Clip>
                    <RectangleGeometry Rect="80, 0, 80, 60"/>
                </Image.Clip>
            </Image>

关键部分: <Image.Clip> <RectangleGeometry Rect="80, 0, 80, 60"/> </Image.Clip>RectangleGeometry

<RectangleGeometry Rect="80, 0, 80, 60"/>是什么意思?Rect的意思是以(80,0)为顶点的长为80,宽为60的矩形,裁剪完毕侯侯对每一个小矩形设置一个transform

draganddrop(拖拽):

拖拽主要分为3个步骤:

1.当MouseLeftButtonDown,计算出鼠标的当前位置

2.当MouseMove,取当前鼠标的位置,计算当前位置与MouseLeftButtonDown时的鼠标位置的x,y轴距离,被拖拽对象的Canvas.TopProperty,Canvas.LeftProperty

3.当MouseLeftButtonDown,释放鼠标。