3

我需要使用 WPF 查看多页 tiff。

我目前有以下内容:

<FlowDocumentReader>
    <FlowDocument>
        <BlockUIContainer>
            <Image x:Name="DocImg" Source="test1752158790.tif" />          
        </BlockUIContainer>
    </FlowDocument>
</FlowDocumentReader>

我只能查看第一页。

有没有办法做到这一点?

谢谢!托德

4

2 回答 2

4

正如另一个问题中的回答,使用TiffBitmapDecoder

像这样的东西:

// Decode TIFF image
ImageStream = new FileStream(EnvelopeItem.LocalImagePath, FileMode.Open, FileAccess.Read, FileShare.Read);
ImageDecoder = new TiffBitmapDecoder(ImageStream, BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.Default);
PageImage.Source = ImageDecoder.Frames.FirstOrDefault();

但是,在您完成显示带有图像的帧之前,请不要处理流。

于 2015-02-03T15:20:05.610 回答
3

我会在后面实现你自己的控制代码。您将需要一些用户输入来指示用户何时从一页转到下一页,无论是通过鼠标单击还是其他方式。

获得该用户输入后,您就可以显示 tiff 的不同页面。正如在 ChrisF 使用的问题中所说,我会使用 libtiff,更具体地说,是 .NET 包装器FreeImage,它很好地封装了 .NET 的 tiff 功能。

于 2010-05-03T15:08:54.127 回答