pdf文件内容分析工具简介(研究pdf标准好帮手)

  前言:PDF文件标准诞生于20年前,从今天的视角来看,标准设计理念有些过时了;然而,pdf文件生态已经形成,尾大不掉吧。纵然有各种缺点,但是不可否认的事实:pdf是当今应用最广泛的版式文件。

  pdf文件中内容是文本和二进制夹杂的混合物,直接查看文件内容难以理解。本人开发了一款工具,可以方便的查看文件内容,见下图:

 

 组成pdf的基本元素是Dictionary。Dictionary包含header和body,header是文本的,描述tree状结构;body是二进制,解析过程由header决定。

pdf文件结构图:

 解析pdf文件过程:

1 找到cross-reference table起始位置。

从pdf文件尾部向前搜索“startxref”,该关键字下一行就是cross-reference table起始位置。

2 解析cross-reference table,确定每个Dictionary对象的起始位置。

 上图说明有32个Dictionary,并标明了每个Dictionary的起始地址。

3 解析Dictionary

 上图前半部分是文本;后半部分是二进制,所以显示为乱码。这个Dictionary描述了一段压缩数据,并指明了压缩算法。

pdf文件的页组成

后记:作者研究pdf多年,但是pdf文件内容不易理解。借助于该工具,能极大的方便对pdf标准的理解,并快速定位问题。

 

posted @   源之缘-OFD解决方案  阅读(84)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
关注我
点击右上角即可分享
微信分享提示