使用Perl模块Image :: ExifTool从PDF读取元信息
发布时间:2020-12-16 06:13:51 所属栏目:大数据 来源:网络整理
导读:我想使用Perl模块 Image::ExifTool从PDF中读取元信息.我需要使用交叉引用流处理PDF(从PDF 1.5开始),其他完善的模块如PDF :: API2和CAM :: PDF似乎不支持他们或支持有限. 无论如何,Image :: ExifTool显然读取了一些PDF tags,但如果我运行以下代码: use Image
我想使用Perl模块
Image::ExifTool从PDF中读取元信息.我需要使用交叉引用流处理PDF(从PDF 1.5开始),其他完善的模块如PDF :: API2和CAM :: PDF似乎不支持他们或支持有限.
无论如何,Image :: ExifTool显然读取了一些PDF tags,但如果我运行以下代码: use Image::ExifTool qw(:Public); my $file = 'file.pdf'; my $exifTool = new Image::ExifTool; $exifTool->ExtractInfo($file); my @tagList = $exifTool->GetFoundTags('File'); for (@tagList){ print "$_n" } 我似乎无法获得更多这些标签: ExifToolVersion FileName Directory FileSize FileModifyDate FileAccessDate FileCreateDate FilePermissions FileType FileTypeExtension MIMEType PDFVersion Linearized Author CreateDate Creator (1) ModifyDate Producer (1) Subject Title (1) XMPToolkit CreateDate (1) CreatorTool ModifyDate (1) MetadataDate Producer Format Title Description Creator DocumentID InstanceID PageLayout PageMode PageCount 特别是,我想得到例如PDF文档目录(Root标记).但是,运行这样的代码不会返回任何值: my $tag = 'Root'; my $exifTool = new Image::ExifTool; my $info = $exifTool->ImageInfo($file,$tag); for (sort keys %$info) { print "$_ => $$info{$_}n"; } 请帮忙 :-) 解决方法
要查看解析启用详细模式:$exifTool-> Options(Verbose => 1);它表明Root确实正在被解析.
7) Root (SubDirectory) --> + [Root directory with 7 entries] | 0) Metadata (SubDirectory) --> | + [Metadata directory with 3 entries] 我不确定你需要从root标签获得什么数据,但是可以使用内部API:my $roottag = Image :: ExifTool :: GetTagTable(‘Image :: ExifTool :: PDF :: Root’); 从Image::ExifTool开始:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |