问题描述
我正在将许多.pdf图形转换为.png,我想保留.pdf文件的元数据,例如 Author , Creator , Title ,等等。
是否可以将元数据从.pdf转换为.png? 或更一般地说,是从一个文件转换为另一个文件?
解决方法
我可以为 PDF-> PNG 的特殊情况提供带有 Unix 命令的版本(它可能适用于其他目标图片格式)。也许在 Windows 中可以使用类似的命令。
该方法包括两个通过管道传递的步骤:
-
获取.pdf文件的元数据
pdfinfo myfile.pdf
-
将此元数据获取到.png文件中。 (有关更多信息,请参见this post)
mogrify -comment "my metadata" myfile.png
我发现.png文件没有像.pdf这样简单的元数据管理,因此,我只使用了mogrify
ImageMagick 的命令,该命令将数据作为“注释”插入在图像中。可以通过运行identify.exe -verbose plogo.png | grep -i "comment:"
或仅运行identify.exe -verbose plogo.png
现在在Unix中管道是这样的:
pdfinfo myfile.pdf | tr '\n' ' ' | xargs -I metadata mogrify -comment "metadata" myfile.png
注意:tr '\n' ' '
管道在空格中转换换行符,以便可以将pdf的整个元数据作为单行字符串输入到.png中。
如果只想选择元数据的某些条目,则可以使用grep
命令进行过滤。例如,这里我们提取整个.pdf元数据的title
,author
和creator
。
pdfinfo myfile.pdf | grep -i 'title\|author\|creator' | tr '\n' ' ' | xargs -I metadata mogrify -comment "metadata" myfile.png
,
这是最实用,功能最强大的可能性exiftool,适用于Linux,MacOS和Windows。
您可以将所有元数据标签从一个文件传输到另一个保留名称,并且可以任何文件格式。
exiftools -tagsfromfile <source-file> <target-file>
例如,在这里,我将元数据从.pdf传输到.png
exiftools -tagsfromfile mysource.pdf mytarget.png
过滤标签:
您也可以选择要传输的标签。例如,如果我只想转移title
,author
和creator
,则设置选项-<tag>
exiftools -tagsfromfile mysource.pdf -title -author -creator mytarget.png