为了账号安全,请及时绑定邮箱和手机立即绑定

设置画布上加载的图像的分辨率 wpf c#

设置画布上加载的图像的分辨率 wpf c#

C#
月关宝盒 2023-07-23 16:51:16
我正在画布上工作并在其上加载图像。如何将图像分辨率设置为 640X480 像素?解码像素高度和解码像素宽度不起作用。   ImageBrush brush = new ImageBrush();        BitmapImage src = new BitmapImage(new Uri(("C:\\Users\\i2v\\Desktop\\GoogleMapTA.jpg"), UriKind.Relative));        src.DecodePixelHeight = 480;        src.DecodePixelWidth = 640;        brush.ImageSource = src;     //   brush.Stretch = Stretch.None;        canvas.Background = brush;        canvas.Height = src.Height;        canvas.Width = src.Width;
查看完整描述

1 回答

?
精慕HU

TA贡献1845条经验 获得超8个赞

BitmapImage 实现该System.ComponentModel.ISupportInitialize接口。BeginInit这意味着它的属性只能在其和方法的调用之间设置EndInit:


var src = new BitmapImage();

src.BeginInit();

src.UriSource = new Uri(@"C:\Users\i2v\Desktop\GoogleMapTA.jpg");

src.DecodePixelHeight = 480;

src.DecodePixelWidth = 640;

src.EndInit();


canvas.Background = new ImageBrush(src);

请注意,您通常不会同时设置DecodePixelWidth和,因为这可能会破坏图像的原始宽高比。DecodePixelHeight设置其中之一或另一个。


查看完整回答
反对 回复 2023-07-23
  • 1 回答
  • 0 关注
  • 111 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信