从 Tiff/SVS 文件中删除页面/图层

有没有一种简单的方法可以从 C# 中的 tiff/svs 文件中删除/删除图层/页面/目录?我希望从一系列简单的 tiff/svs 文件中删除特定页面。如果它类似于tifFile.dropLayer(0)而不是需要将所有内容从内部复制到副本,那就太好了。我已经尝试了 LibTiff 以获得一个很好的解决方案,但这比我希望的要复杂。我尝试使用他们的UnlinkDirectory()方法,但该层在事后仍然显示(除非有保存调用或我遗漏的东西。为此,我正在做:


using (Tiff tif = Tiff.Open(fileName, "a"))

{tif.UnlinkDirectory(4);}

我认为它保存并写入了Close()方法,并在Dispose(). 我只需要一个简单的开源库或 .NET 中的其他方式来完成此任务。


绝地无双
浏览 343回答 1
1回答

森林海

我找到了解决我的问题的方法。我使用的是 LibTiff 库的 nuget 包版本。我卸载了它,从 Github 克隆了他们的 repo,将该 repo 中的必要项目复制到我的项目中,并且一切正常。我仍然使用相同的基本代码,上面除了我直接调用Flush的上Tiff对象,而不是等待Write,Close或Dispose方法来为我做。Flush在切换源之前,我仍然尝试使用 nuget 版本。问题似乎出在包的 nuget 安装损坏或以太中的其他东西上。
打开App,查看更多内容
随时随地看视频慕课网APP