要在.NET中打开多帧TIFF图像格式,您可以使用System.Drawing和System.Windows.Media.Imaging命名空间中的类。以下是一个简单的示例,说明如何在.NET中打开多帧TIFF图像并将其显示在窗口中:
Install-Package System.Drawing.Common
using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Windows.Media.Imaging;
namespace MultiFrameTiffExample
{
class Program
{
static void Main(string[] args)
{
string filePath = "path/to/your/tiff/file.tif";
using (var tiff = Image.FromFile(filePath))
{
int frameCount = tiff.GetFrameCount(FrameDimension.Page);
for (int i = 0; i< frameCount; i++)
{
tiff.SelectActiveFrame(FrameDimension.Page, i);
using (var bitmap = new Bitmap(tiff))
{
ShowImage(bitmap);
}
}
}
}
static void ShowImage(Bitmap bitmap)
{
var bitmapSource = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(
bitmap.GetHbitmap(),
IntPtr.Zero,
Int32Rect.Empty,
BitmapSizeOptions.FromEmptyOptions());
var window = new Window();
var image = new System.Windows.Controls.Image();
image.Source = bitmapSource;
window.Content = image;
window.ShowDialog();
}
}
}
这个示例将打开指定的多帧TIFF文件,遍历每个帧并将其显示在单独的窗口中。请注意,这个示例仅适用于.NET Framework。如果您使用的是.NET Core或.NET 5,请使用System.Drawing.Common NuGet包。
领取专属 10元无门槛券
手把手带您无忧上云