PDF内容不足以重建PDF?

时间:2017-06-14 23:47:08

标签: pdf binaryfiles

我打开一个pdf文件" test.pdf"使用Vim并将其内容复制到另一个文本缓冲区,我保存为" copy.pdf"。我不明白为什么" copy.pdf"不同,可以打开为pdf(标题显示)但页面为空。

当我使用FileReader.readAsBinaryString在Javascript中读取文件并将其重写到磁盘时也会发生同样的情况,因此它与我在Vim中的复制方式无关。

更奇怪的是,Finder说副本实际上要大30KB。

隐藏的字节在哪里?

1 个答案:

答案 0 :(得分:1)

通常当我看到这种行为并产生空白页时,它是使用程序或进程将PDF的二进制信息视为某种形式的文本的结果 - 例如,做CR / LF转换,制表符到空格转换或将数据解释为UTF-8而不是二进制。进行任何类型的转换都会破坏PDF中的二进制流,并导致交叉引用表中的偏移字节变得不正确,从而导致PDF无法读取。 也许你回写磁盘进行CR / LF转换或者将二进制blob视为非二进制的过程?