如何在WPF中处理巨大的tif?

我有一个8位tiff 14406×9606像素,当通过Bitmap
Image加载时会抛出System.OutOfMemoryException.作为一个完整的深度位图,它的大小约为400兆.有没有办法将图像分割成更易于管理的块?我已经尝试使用DecodePixelHeight以较低的分辨率加载它,这可行,但随后我需要在缩放级别更改时重新加载.是否有任何已建立的工具可以在不同的缩放级别处理WPF中真正大的图像? 最佳答案 没有任何内置功能可以直接处理.正如您所提到的,DecodePixelHeight可能是框架本身的最佳选择.

但是,您可以使用类似于C# wrappers for GDAL的内容.GDAL处理非常大的TIFF文件,包括具有金字塔的文件,并允许您(非常快速地)以各种分辨率打开TIFF,而无需将整个文件加载到内存中.这仍然需要刷新/重新加载分辨率更改,但是它们的TIFF加载速度比框架的成像类快得多,因为它设计用于处理极大的图像.

点赞