gpt4 book ai didi

java - 使用 Java 创建分层 Tif 以在 Photoshop 中使用

转载 作者:塔克拉玛干 更新时间:2023-11-01 23:05:24 24 4
gpt4 key购买 nike

我感兴趣的是使用 Java 创建分层的 tif,Photoshop 可以识别这些层。我能够 create a multi-page tif ,但 Photoshop 无法将页面识别为图层。这些页面可以用 Acrobat 查看。有人知道 Photoshop 如何存储 tif 图层数据以及如何使用 Java 生成这些数据吗?

谢谢。

最佳答案

我已经为我的 TIFF ImageIO plugin 研究了这个,据我所知,Photoshop 在 TIFF 中存储图层信息的方式是完全专有的,并且不使用标准的 TIFF 机制,例如使用链接或嵌套 IFD (330/SubIFD) 的多页文档,或者文件类型(254/NewSubFileType)等

相反,它存储图层信息, 连同图层图像数据,在 Photoshop specific TIFF tag 中; 37724/ImageSourceData,其类型为 UNDEFINED(或“仅字节”)。幸运的是,此标签的内容记录在 Adobe Photoshop®TIFF Technical Notes 中。 .

此标签的内容将始终以 0 结尾的字符串 "Adobe Photoshop Document Data Block" 开头。其余内容是各种 Photoshop 资源,由 Photoshop 4 字节资源标识符 8BIM 标识,后跟 4 字节资源 key 和 4 字节长度用于每个单独的资源。

关于 Photoshop 层,此 block 中有趣的资源是用资源键 Layr 标识的资源。这与 Layer and Mask Information Section 中记录的结构相同Photoshop 文件格式。

还有一个不同的标签,34377/Photoshop,其中包含由 Photoshop 读取和写入的其他图像资源。它也记录在 Image Resources Section 中上述文件。它确实包含一些关于图层的有趣信息,但我不确定您需要编写多少信息。您可能需要安装 Photoshop 并使用“真实的东西”进行测试。

我确实有代码可以读取 PSD ImageIO plugin 中的这两个结构,这可能值得一看,但它还不支持写入。

当您可以写入内容 Photoshop TIFF 标签时,您应该能够将它作为 TIFF IIOMetadata 的一部分传递给 TIFFImageWriter作者会将其与您传递的任何其他元数据和像素数据一起写入。


因此,如您所见,这一切(大部分)都已记录在案,并且肯定可以在 Java 中实现,但仍不完全是微不足道的。

关于java - 使用 Java 创建分层 Tif 以在 Photoshop 中使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41110630/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com