我正在尝试将 EXIF 标签从一个 JPEG 复制到另一个没有元数据的 JPEG 中。我尝试按照此评论中的描述进行操作。
我的想法是复制标签源文件中的所有内容ffdb,直到第一个排除的内容,然后从第一个包含的图像源文件(没有标签)中复制所有内容ffdb。生成的文件已损坏(缺少 SOS 标记)。
完整的重现器,包括 Luatic 的建议,可在https://go.dev/play/p/9BLjuZk5qlr上找到。只需在包含带有标签的 test.jpg 文件的目录中运行它即可。
这是执行此操作的 Go 代码草案。
func copyExif(from, to string) error {
os.Rename(to, to+"~")
//defer os.Remove(to + "~")
tagsSrc, err := os.Open(from)
if err != nil {
return err
}
defer tagsSrc.Close()
imageSrc, err := os.Open(to + "~")
if err != nil {
return err
}
defer imageSrc.Close()
dest, err := os.Create(to)
if err != nil {
return err
} …Run Code Online (Sandbox Code Playgroud)