BitMiracle Tiff.ClientOpen()失败

问题描述 投票:1回答:2

我试图用Tiff.ClientOpen方法打开一个图像字节数组,如下所示:

 using (MemoryStream ms = new MemoryStream(img))
 {
     using (Tiff input = Tiff.ClientOpen("InMemory", "r", ms, new TiffStream()))
     {

     }
 }

其中img = byte []。

但在我的第二个'使用'输入= null。我100%肯定img有数据,并且通过调试过程它甚至工作了几次。

有没有人经历过这个?

c# .net tiff
2个回答
0
投票

似乎问题是我正在读取内存流的tiff的格式。通过使用库创建tiff,如下例所示:

https://bitmiracle.github.io/libtiff.net/?topic=html/e4f25423-eede-4ef6-a920-9cb539d056c6.htm

然后将结果传递给内存流,之后ClientOpen()工作。不知道为什么。这是你希望BitMiracle提供支持的时候;)。


0
投票

将InMemory替换为内存,并确保选择了有效的图像。

using (Tiff image = Tiff.ClientOpen("in-memory", "r", ms, new TiffStream()))
© www.soinside.com 2019 - 2024. All rights reserved.