首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用libexif保存/复制XMP

使用libexif保存/复制XMP
EN

Stack Overflow用户
提问于 2021-04-26 10:00:31
回答 1查看 99关注 0票数 0

我试图添加一个缩略图到JPEG图片使用libexif。现在,我从exif ( libexif团队提供的命令行工具)借用代码。但是,我注意到从元数据中删除了XMP标记。有一个古老的这里

我试图了解如何使用libexif来实现这一点,但我并不真正理解如何从输入文件中获取XMP并将其放入输出文件中。我只想复制所有的XMP数据,我不需要提取任何数据。

我看到tag.h中有一个标记tag.h,但不知道如何读/写这个标记。

一个相关的解决方案是在这个答案中,但它看起来很复杂。我不熟悉C语言的编码。

如果只使用libexif API,是否可以保留所有的XMP?最近几年在这方面有什么变化吗?你怎么用代码写这个?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-06 17:58:15

我认为这应该有点直截了当。XMP字段在ISO/Adobe标准中进行了描述。常规的Kotlin/Java/Android文件I/O和一些字符串操作应该是所需的。

首先,我将熟悉ISO 16684-1:2019.然后,为jpeg文件类编写一个获取所有XMP字段的方法。将这些字段存储在临时文件中(以防止在发生代码或libexif崩溃时难以恢复数据丢失)。把文件交给libexif。生成缩略图。最后,当完成之后,您可以恢复XMP字段。如果缩略图也存储在XMP字段中(听起来也是这样),那么在将所有XMP字段添加回jpeg之前,可能更容易将该字段与其他已被抓取的字段连接起来,更新临时文件,使其包含每个XMP字段。

不幸的是,我目前没有时间阅读50页ISO标准,合成信息,然后编写代码来实现解决方案。至少这里有一个标准链接,可以让你开始工作。

https://www.iso.org/obp/ui/#iso:std:iso:16684:-1:ed-2:v1:en

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67264563

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档