我正在尝试找到一个允许我使用任意数量的通道创建tiff的库,例如Photoshop如何允许它发生。
具体来说,我需要编写一个6通道TIFF(CMYK w / 2通道代表白色),但所有库/脚本工具我都在RBGA找到最大值。
有关如何编程的任何想法?
我想要的详情
来自@ BitBank的问题如下。我宁愿不自己实现adobe tiff spec。
操作环境 Ubuntu / Windows Server
FOSS /付费?最好是OSS
语言? C / C ++ / C#/ Golang / Python / Java
答案 0 :(得分:2)
这可以通过一些工具(包括我自己的公司)来完成,但是你要遇到的问题是“正确”的解决方案在TIFF领域并没有多大意义。例如,您可以将通道数设置为您想要的任何数量,并为额外样本标记设置值数组,但您将使用未定义的值。那么问题是光度解释标签应该包含什么?它不是CMYK,在规范中没有任何东西适合它。
那么PhotoShop做什么?不知道我的头脑,但我知道有一个ICC配置文件标签,可以包含定义频道信息所需的所有信息,所以也许这样做?当您参与创建TIFF规范并拥有支持自定义扩展的工程设计时,可以做出这种决定。你没有那个。这就是将要发生的事情(从我的观点来看):你奇怪的TIFF让它暴露在野外并落入我的一位客户的手中,然后他说:“嘿! - 你的软件给我有趣的颜色/没有图像时我打开这个TIFF。我以为你支持TIFF?“这通常来自一个客户,他不知道TIFF不是一种文件格式,而是一堆不同的格式/压缩,并且当你有一些大学项目制作了一组未标准化的灰色TIFF时通道值的浮点数据,并使用完全自定义,未发布,未记录的标记集来描述最小值和最大值,因此我浪费了几天时间来尝试跟踪文件的来源并为客户编写示例应用程序规范化通道值并标准化文件。 GUH。
非常重要的建议:不要这样做。
如果您选择忽略我的非常重要的建议并执行此操作,则应执行以下操作:
如果我是你,我会做什么 - 将频道分成n个不同的灰色文件,并将它们与XML文件捆绑在一起,该文件记录如何将它们放在一起,或者将CMYK文件与多个单独的TIFF中的额外通道捆绑在一起文件。