Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Acrobat Reader在关闭pdf文件时提示保存该文件(使用TCPDF创建)_Php_Pdf_Zend Framework2_Tcpdf - Fatal编程技术网

Php Acrobat Reader在关闭pdf文件时提示保存该文件(使用TCPDF创建)

Php Acrobat Reader在关闭pdf文件时提示保存该文件(使用TCPDF创建),php,pdf,zend-framework2,tcpdf,Php,Pdf,Zend Framework2,Tcpdf,我的问题是在Acrobat Reader中打开的pdf,它是在ZF2上用TCPDF创建的 文件创建良好(文件大小除外,约500kb),内容良好,但在尝试关闭文件时,Acrobat会提示保存更改,尽管没有更改。保存并覆盖文件后,文件大小将降至40kb左右。因此,文件大小减少了10倍以上,但内容或其他方面没有明显变化 我得到的最接近相关答案是这里的这条线索 据我所知,该问题与“外部参照表格式不正确”有关,但我对pdf的经验不足以理解问题的根源。示例文件在这里可用 提前谢谢 只有文件的前7036字节构

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

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

我得到的最接近相关答案是这里的这条线索

据我所知,该问题与“外部参照表格式不正确”有关,但我对pdf的经验不足以理解问题的根源。示例文件在这里可用


提前谢谢

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

AdobeReader显示了这些领先的7KB,并最终提供将它们保存为修复后的文件,并按照读者的喜好进行编码(将这些7KB分解为40KB)

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


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

问题实际上尚未完全解决:)


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

我刚刚检查了您包含的文件,在打开文件之前或之后,文件大小没有变化。在我的计算机上,文件大小为524kb。当我从WinXP-32位更改为Win7-64位时,我遇到了相同的问题,(关闭前是否将更改保存到)但是也许我在我的TCPDF代码中添加了太多的代码,我以前的TCPDF文件可以工作,但是新的不能,希望我能找到我的编码错误。(我使用mysqlPHP no-Zend)谢谢!问题当然是在椅子和键盘之间。。。在我对pdf缺乏经验的情况下。在输出pdf之后,我没有退出该过程,因此zend继续并在pdf末尾插入多余的数据。也许您应该提供一些代码。那么,了解您的环境的人可能会更好地帮助您。我只知道我在PDF里面的路,因此,我再也帮不上什么忙了。