3

我的问题是在 Acrobat Reader 中打开的 pdf,它是在 ZF2 上使用 TCPDF 创建的。

文件创建正常(文件大小除外,大约 500kb),内容正常,但尝试关闭文件时,Acrobat 提示保存更改,但没有更改。保存文件并覆盖后,文件大小降至 40kb 左右。因此文件大小减少了 10 倍以上,但内容或其他方面没有明显变化。

最接近我得到任何相关答案的是这里的线程http://forums.planetpdf.com/save-file-prompt-when-closing_topic36.html

据我了解,该问题与“外部参照表格式错误”有关,但我对 pdf 的经验不足以理解我的问题的根源。此处提供示例文件https://dl.dropboxusercontent.com/u/29072870/test_pdf.pdf

提前致谢!

4

2 回答 2

2

只有文件的前 7036 个字节构成了您的实际 pdf。之后的一切都是一些 HTML 代码。因此,您应该检查您的 pdf 创建代码,它似乎也包含一些 HTML 创建代码(复制和粘贴的剩余部分?由框架添加?)。

Adobe Reader 显示这些领先的 ​​7KB 并最终提供将它们保存为像 Reader 喜欢的那样编码的修复文件(将这些 7KB 分解为您的 40KB)。

PS:我刚刚看到在 HTML 代码之后还有大约 80KB 的空字节。

看起来您收到了一个大小为 0x80000(十进制 = 524288)字节的完整字节缓冲区,其中包含您的 PDF、一些 HTML 和一些尚未使用的空间。

于 2013-09-27T08:13:50.863 回答
0

问题实际上还没有完全解决:)

这个问题现在变得更加奇怪了。在 chrome 上一切正常,创建的 pdf 是可靠的,没有额外的数据。而在firefox中,pdf的输出很好,保存文件很好,用acrobat打开文件很好,关闭会产生相同的结果提示保存而不做任何更改。显然,文件末尾仍然存在部分空字节。在 TCPDF 输出中使用“下载为文件”选项时,结果是正确的,EOF 之后没有其他数据。只有在浏览器(firefox)中输出pdf并从那里保存时才会发生。这可能是一些Firefox的问题吗?可以检查文件中的这种多余数据并以某种方式将其删除吗?

于 2013-09-27T09:53:45.760 回答