2013-09-26 87 views
2

我的問題是在Acrobat Reader中打開的pdf,使用ZF2上的TCPDF創建。Acrobat Reader在關閉時提示保存pdf文件(使用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

在此先感謝!

+0

我剛剛檢查了包含的文件沒有更改大小之前或之後打開文件大小爲524kb在我的機器上 –

+0

當我從WinXP-32bit更改爲Win7-64bit我有同樣的問題,(你想保存更改但是可能我在TCPDF代碼中添加了太多的代碼,我以前的TCPDF文件可以工作,但不是新的,希望我能找到我的編碼錯誤(我使用mysqlPHP沒有Zend) –

回答

2

只有您的文件的前7036個字節組成您的實際PDF。之後的一切都是一些HTML代碼。因此,你應該檢查你的pdf創建代碼,它似乎包含一些HTML創建代碼(從粘貼複製&剩下的框架?),也是如此。

Adob​​e Reader顯示了這些領先的7KB,並最終提供將它們保存爲一個像Reader一樣編碼的修復文件更喜歡它(將這些7KB分解爲40KB)。 PS:我剛纔看到在那裏的HTML代碼之後還有大約80KB的空字節。

它看起來像您收到一個包含您的PDF,一些HTML和一些尚未使用的空間大小的字節緩衝區0x80000(= 524288十進制)。

+0

謝謝! 問題當然是在椅子和鍵盤之間......以及我對pdf的缺乏經驗。在輸出PDF後,我沒有退出這個過程,因此zend繼續,並將這些超出的數據插入pdf的末尾。 – Kristo

0

問題其實還沒有完全解決:)

現在這個問題變得更加奇怪了。在鉻一切工作完美,創建PDF是堅實的,沒有額外的數據。而在Firefox中PDF的輸出是好的,保存文件工作正常,用acrobat打開文件罰款,關閉產生相同的結果提示保存沒有任何改變。顯然在文件的末尾仍然存在一部分空字節。當在TCPDF輸出中使用「作爲文件下載」選項時,結果是正確的,EOF後沒有附加數據。只有在瀏覽器(firefox)輸出pdf並從那裏保存時纔會發生。它可能是一些Firefox的問題?可以檢查文件中是否有這種多餘的數據,並以某種方式刪除它?

+0

也許你應該提供一些代碼。然後知道你的環境的人可能會更好地幫助我只知道我在pdf內部的方式,因此,幾乎不能再幫助。 – mkl

相關問題