WPF里怎么实现读取一个图片的一部分?
如图片上的,我用来做按钮,第一个按钮只加载Yse部分的白色图片,然后第二个按钮值读取NO部分的黑色图片,求高手指点下。...
如图片上的,我用来做按钮,第一个按钮只加载Yse部分的白色图片,然后第二个按钮值读取NO部分的黑色图片,求高手指点下。
展开
2个回答
2015-12-15 · 知道合伙人软件行家
关注
展开全部
通过 从给定的 Uri 创建新的 BitmapFrame。 其中Create方法可接受不同方式的图片对象(如路径,流对象或BitmapSource)
/// <summary>
/// 获取一张图片中的一部分
/// </summary>
/// <param name="ImgUri">图片路径</param>
/// <param name="XCoordinate">要截取部分的X坐标</param>
/// <param name="YCoordinate">要截取部分的Y坐标</param>
/// <param name="Width">截取的宽度</param>
/// <param name="Height">截取的高度</param>
/// <returns></returns>
private BitmapSource GetPartImage(string ImgUri, int XCoordinate, int YCoordinate, int Width, int Height)
{
return new CroppedBitmap(BitmapFrame.Create(new Uri(ImgUri, UriKind.Relative)), new Int32Rect(XCoordinate, YCoordinate, Width, Height));
}
/// <summary>
/// 获取一张图片中的一部分
/// </summary>
/// <param name="ImgUri">图片路径</param>
/// <param name="XCoordinate">要截取部分的X坐标</param>
/// <param name="YCoordinate">要截取部分的Y坐标</param>
/// <param name="Width">截取的宽度</param>
/// <param name="Height">截取的高度</param>
/// <returns></returns>
private BitmapSource GetPartImage(string ImgUri, int XCoordinate, int YCoordinate, int Width, int Height)
{
return new CroppedBitmap(BitmapFrame.Create(new Uri(ImgUri, UriKind.Relative)), new Int32Rect(XCoordinate, YCoordinate, Width, Height));
}
展开全部
我说下做这种按钮的思路。因为只有两种状态“yes”和"no",可以选用checkbox按钮。checkbox的template里放两张图片,即“yes”状态下的图片和"NO"状态下的图片。然后用trigger控制check和uncheck状态下两张图片的可见性就可以了。
追问
这是一张图
追答
image外放一个容器,然后设置image相对位移。
给给例子:image外套一个Border
当Image 的margin设置为(-100 0 0 0)时显示右半边图片
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询