零元学Expression Blend 4 - Chapter 34 啊~!!我不要毛毛的感觉!-使用布局修整「UseLayoutRounding」
原文:零元学Expression Blend 4 - Chapter 34 啊~!!我不要毛毛的感觉!-使用布局修整「UseLayoutRounding」
本章将介绍UseLayoutRounding,中文我把它翻译为「布局修整」
英文原文为:Gets or sets a value that determines whether to use rounding behavior that aligns layout to whole pixels.
?
本章将介绍UseLayoutRounding,中文我把它翻译为「布局修整」
?
根据MSDN对UseLayoutRounding的介绍
UseLayoutRounding:为取得或设定值,这个值决定是否要使用将配置对齐整数像素的进位行为。
?
我查了一下英文原文为:
Gets or sets a value that determines whether to use rounding behavior that aligns layout to whole pixels.
?
我想,应该还有更好的表达方式
让我来带大家看看何谓UseLayoutRounding吧!
?
就是要让不会的新手都看的懂!
?
01
请在专案的工作区中放入两个Rectangle
宽高皆设定为:100.7
按下进阶箭头,你可以在延伸的功能中找到UseLayoutRounding
如下图:
?
请设定一个Rectangle勾选UseLayoutRounding,另一个Rectangle则不勾选
你也可以直接复制下面的Xaml
1: <Grid x:Name="LayoutRoot" Background="White">
2:?
3: <Grid.ColumnDefinitions>
4:?
5: <ColumnDefinition Width="0.5*"/>
6:?
7: <ColumnDefinition Width="0.5*"/>
8:?
9: </Grid.ColumnDefinitions>
10:?
11: <Rectangle Fill="#FFF4F4F5" HorizontalAlignment="Center" Margin="0" Stroke="Black" Width="100.7" Height="100.7" VerticalAlignment="Center" StrokeThickness="10"/>
12:?
13: <Rectangle Fill="#FFF4F4F5" HorizontalAlignment="Center" Margin="0" Stroke="Black" Width="100.7" UseLayoutRounding="False" Height="100.7" Grid.Column="1" VerticalAlignment="Center" StrokeThickness="10"/>
14:?
15: </Grid>
?
请把工作区的大小倍数拉大,或是仔细看
发现不一样的地方了吗?
?
左边的Rectangle边框是清楚的,但右边的边框有点模糊
看右边的Rectangle时会感觉好像是眼睛度数不够一样,物件边框会雾化,不够精细
?
这就是UseLayoutRounding设定值的差异
UseLayoutRounding可以改善边框锯齿状与雾化的状态,取而代之的是明亮乾净的画面
?
我将画面截下来使用绘图软体放大到300倍以上
差异就很明显了
下图是右边未使用UseLayoutRoundin的左上角
?
右边没有使用UseLayoutRounding的Rectangle周围出现了灰色的线条
但左边有使用UseLayoutRounding的Rectangle周围却是很平整的
?
有的布局会用切Grid或百分比的方式来切割版面(Grid的介绍请看这里)
假如说切三等分,那每一等份就是0.33333333,不会是一个整数
?
所以在里面的物件大小也就不会是整数,画出来就会有毛毛的感觉
有使用UseLayoutRounding的话,绘图引擎会强制把它用整数画出来
看起来就不会毛毛的
?
但另一个布局容器Canvas里面的物件就不会被影响到,因为Canvas不会影响布局
想了解更多Canvas请到这里
?
UseLayoutRounding是个很容易被忽略的设定项目
但若能注意到很小的设定,会对你Silverlight的制作加分喔!
?
?
本篇的教学就到此。
?
?
?
(若有任何错误的地方,请各位前辈或同好能不吝指教,小女子都会虚心接受;若是你喜欢我的教学,请给我点鼓励,谢谢。)
一步一步迈向HIE之路
喜欢我文章请推我一下或给我个回应,你的鼓励会给我无限的动力喔!
若是您有其他问题或是特别需要,请在文章回应处留言,我会尽快回覆您
零元学Expression Blend 4 - Chapter 34 啊~!!我不要毛毛的感觉!-使用布局修整「UseLayoutRounding」的更多相关文章
- 零元学Expression Blend 4 - Chapter 46 三分钟快速充电-设定Margin的小撇步
原文:零元学Expression Blend 4 - Chapter 46 三分钟快速充电-设定Margin的小撇步 如果需要经常的使用某一项工具,总会希望能够更快速的使用各项设定达到效果 今天要介绍 ...
- 零元学Expression Blend 4 - Chapter 47 超简单!运用StackPanel配合OpacityMask做出倒影效果
原文:零元学Expression Blend 4 - Chapter 47 超简单!运用StackPanel配合OpacityMask做出倒影效果 有网友问我如何在Blend内制作出倒影效果 我提供了 ...
- 零元学Expression Blend 4 - Chapter 44 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(下)
原文:零元学Expression Blend 4 - Chapter 44 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(下) 抱歉久等了!!!! 终於到了动画MenuBar ...
- 零元学Expression Blend 4 - Chapter 45 ListBox里的物件不能换行吗?
原文:零元学Expression Blend 4 - Chapter 45 ListBox里的物件不能换行吗? ListBox里的排列不是垂直就是水平,觉得这样的排列很枯燥乏味吗? 想要它变聪明吗? ...
- 零元学Expression Blend 4 - Chapter 42 五分钟快速完成扇形变圆形动画
原文:零元学Expression Blend 4 - Chapter 42 五分钟快速完成扇形变圆形动画 零元学Expression Blend 4 - Chapter 42 五分钟快速完成扇形变圆形 ...
- 零元学Expression Blend 4 - Chapter 41 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(中)
原文:零元学Expression Blend 4 - Chapter 41 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(中) 我们接着进行动画MenuBar的制作 接续着上 ...
- 零元学Expression Blend 4 - Chapter 40 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(上)
原文:零元学Expression Blend 4 - Chapter 40 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(上) 一直以来都有人拿Flash的动画问我Blend ...
- 零元学Expression Blend 4 - Chapter 39 虾米?!同款?不同师傅!告诉你Visible、Hidden与Collapsed的差异!
原文:零元学Expression Blend 4 - Chapter 39 虾米?!同款?不同师傅!告诉你Visible.Hidden与Collapsed的差异! 由此可知 Hidden为隐藏项目,但 ...
- 零元学Expression Blend 4 - Chapter 38 看如何使用Clip修出想要的完美曲线(下)
原文:零元学Expression Blend 4 - Chapter 38 看如何使用Clip修出想要的完美曲线(下) 你可以把Clip想成是一个遮罩,运用遮罩达到我们想要的效果 所以在这里我们把文字 ...
随机推荐
- java读取.properties文件乱码
1.config.properties文件写不进中文,写进去都变成了unicode,解决的方法是右键该文件--Properties--Resource--Text file encoding ,选ot ...
- java 保存和读取本地json文件
保存数据到本地文件 private void saveDataToFile(String fileName,String data) { BufferedWriter writer = null; F ...
- eCognition学习记录
作者:朱金灿 来源:http://blog.csdn.net/clever101 昨天公司从外面请了人讲解eCognition的最新进展及项目二次开发应用情况.我做了大致下面记录: 1. eCogn ...
- Docker简单的使用命令
Hello World 使用[docker run]命令在docker container中执行应用程序 <pre name="code" class="plain ...
- vmware合并多个虚拟硬盘文件(使用vmware-vdiskmanager.exe)
有时,当我们创建虚拟机vmware里面的应用程序,我们可能会选择创建分割的虚拟磁盘中的多个文件2GB的文件,这是为了提高复制过程,主要用于存储虚拟机文件系统不支持创建更大的文件.还有种情况是虚拟化物理 ...
- 将git文件挂到cdn上
网址:http://raw.githack.com/
- spring boot——结合docker
spring boot——结合docker 前言 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 liunx机器上,也可以实现虚 ...
- sklearn 下的流行学习(Manifold Learning)—— sklearn.manifold
1. t-SNE from sklearn.manifold import TSNE X_proj = TSNE(random_state=123).fit_transform(X) 2. t_sne ...
- 接口测试——fiddler对soapui请求返回信息抓取
原文:接口测试——fiddler对soapui请求返回信息抓取 背景:接口测试的时候,需要对接口的请求和返回信息进行查阅或者修改请求信息,可利用fiddler抓包工具对soapui的请求数据进行抓取或 ...
- c#调用ffmpeg嵌入srt/ass字幕提示Unable to open xxx.srt......
最近接触到c#调用ffmpeg嵌入srt/ass字幕,碰到一个错误困扰了很久 Unable to open xxx.srt Error initializing filter 'subtitles' ...