我正在尝试使用 C++ 在磁盘上进行一些文件雕刻。我在网上找不到任何与 pdf 文件的磁盘结构相关的资源。问题是我可以在集群的开头找到 %PDF-1.x 令牌,但我无法在任何地方找到 PDF 文件的大小。
假设这个特定文档的文件系统条目丢失了。我找到了文档的开头并继续阅读,直到遇到“startxref number %%EOF”。问题是我不知道何时停止,因为文档内容中有多个“%%EOF”标记。
我试过在阅读后停下来,比如说 10 个集群,但在任何地方都没有找到任何 pdf 特定的关键字,如“obj”、“stream”、“trailer”、“xref”。但它非常随意,它不是找到文档结尾的确定性方法,因此我可以确定它的大小。
我还在一些“obj”的开头看到了一些“长度数字”标记,但大多数时候这个数字并不适合。
关于下一步我可以尝试什么的任何想法?有没有办法确定整个文档的确切大小?我对以编程方式恢复文档感兴趣。