WPF 和超大图像

标签 wpf image

我能做些什么来帮助管理 WPF 用于渲染巨大图像(可能高达 10,000 x 10,000 的任何图像)的绝对内存量?

我需要保持质量,因为缩放是关键,但加载图像控件似乎需要 50 - 700MB 的内存使用量:S

目前我没有做任何特别聪明的加载图像的事情:

BitmapImage imageSource = new BitmapImage();
imageSource.BeginInit();
imageSource.UriSource = new Uri(imageUrl, UriKind.Absolute);
imageSource.CacheOption = BitmapCacheOption.OnLoad;
imageSource.EndInit();

image.Source = imageSource;

最佳答案

您可以使用 BitmapImage.DecodePixelHeightBitmapImage.DecodePixelWidth以针对对话框大小优化的较低质量呈现图像。在 XAML 中,它看起来像这样:

<Image>
    <Image.Source>
        <BitmapImage UriSource="http://server/image.jpg" DecodePixelWidth="400" />
    </Image.Source>
</Image>

关于WPF 和超大图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2949639/

相关文章:

wpf - 控件可以在网格中跨越半个 ColumnSpan 吗?

wpf - WPF-如何获取按钮的IsFocused或GotFocus/LostFocus来触发按钮模板中元素的动画的开/关

c# - 当只有一个图钉时,如何确定 Bing map 的正确缩放级别?

html - 如何在悬停时添加文本

image - 无法通过 HTTPS 访问 Amazon S3 dzi 图像文件

c# - datagrid 获取单元格索引

wpf - 当 DataGrid 中进行数据绑定(bind)时,CommandParameter 未传递到 CanExecute(CanExecute 参数为 null)

html - 将图像完美地贴合在页面上

asp.net - #评估图像数据

java - 是否有易于使用的图像库来进行简单操作(读取、写入、旋转、调整大小)?