如何根据Canvas的大小显示其中的Image?

Zeilg1981 2010-08-03 10:14:10
一个Canvas,设置了Width=1000和Height=600。
Canvas中只有一个Image控件,控件载入了一张3200*2400大小的Image,并且设置了Image控件的宽高,图片原始大小显示出来了。但却超出了Canvas的大小,有什么办法按照Canvas的大小来显示其中的Image图像么?
...全文
2652 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Sunpire 2010-08-04
  • 打赏
  • 举报
回复
设置 Image 的宽和高小于或等于 Canvas 的宽和高,
然后设置 Image 的Strech属性,可设为Fill或Uniform或者UniformToFill。

2楼把所有的情况都说到了,支持。
jv9 2010-08-04
  • 打赏
  • 举报
回复
设置Image的宽和高就可以解决了。

emily1900 2010-08-04
  • 打赏
  • 举报
回复
你是要按照Canvas的大小来显示其中的Image图像,就设置Stretch="Fill",然后图片的width,height设置成和canvas的width,height一样。
下面是几种Stretch的属性,设成其他的可能导致图片有些部分超过了canvas的范围而显示不出来。

属性值分别为原始尺寸(None)、填充拉伸(Fill)、等比拉伸(Uniform)和等比拉伸填充(UniformToFill)。
healer_kx 2010-08-04
  • 打赏
  • 举报
回复
设置图片的strech属性
badi888 2010-08-03
  • 打赏
  • 举报
回复
把图片缩小再载入
hsy36000 2010-08-03
  • 打赏
  • 举报
回复
设置图片的宽和高和canvas相等,设置图片的strech属性。可设为Fill或Uniform或者UniformToFill。总之别设成None。如果你的想法是让图片维持原大小而显示canvas所在的那个部分(1000*600),可以用canvas的clip属性。这个属性裁去了1000*600之外的内容。
<Canvas>
<Canvas.Clip>
<RectangleGeometry Rect="0,0,1000,600"/>
</Canvas.Clip>
<Image></Image>
</Canvas>

8,756

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧