我试图用Tiff.ClientOpen方法打开一个图像字节数组,如下所示:
using (MemoryStream ms = new MemoryStream(img))
{
using (Tiff input = Tiff.ClientOpen("InMemory", "r", ms, new TiffStream()))
{
}
}
其中img = byte []。
但在我的第二个'使用'输入= null。我100%肯定img有数据,并且通过调试过程它甚至工作了几次。
有没有人经历过这个?
似乎问题是我正在读取内存流的tiff的格式。通过使用库创建tiff,如下例所示:
https://bitmiracle.github.io/libtiff.net/?topic=html/e4f25423-eede-4ef6-a920-9cb539d056c6.htm
然后将结果传递给内存流,之后ClientOpen()工作。不知道为什么。这是你希望BitMiracle提供支持的时候;)。
将InMemory替换为内存,并确保选择了有效的图像。
using (Tiff image = Tiff.ClientOpen("in-memory", "r", ms, new TiffStream()))