2017-07-23 70 views
0

目前我正在使用PHP和TCPDF來創建PDF文件。但是現在我遇到了一些問題。TCPDF檢查分頁

我的PDF分爲四列。當我將文本打印到第一列時,我想檢查分頁符是否出現增加x位置並重置y位置。

我怎麼能以某種預渲染的檢查是pagebreaks出現從而使其繼續在列2,3,等我可以改變x和y位置...

我現在他們是這樣的一些功能: How to calculate the height of a MultiCell/writeHTMLCell in TCPDF?

但是,這可以用來檢查是否有分頁或不是?

回答

0

對於相當遲鈍的答案感到抱歉...... 確實存在一些問題,關於重新調整豎直列中嵌套的某些框/窗口小部件的高度以便正確顯示它們。

想象一下你有3列。
A =>左柱,B =>中心柱,C =>右列

問題1:最後Y座標 根據其中爲了您填寫的列(例如文本),你最後Y-位置始終與最後一個動作相關,這可能是文本短的列之一,所以如果需要繪製另一個對象,則會覆蓋其他對象。因此,在垂直繪製多個對象(列)時,存儲Max-Y-Pos非常重要。

問題2:檢查分頁符

寫一些函數/方法,你在哪裏通過你的文字或任何你在該列顯示,和列寬。例如函數checkColumnPageBreak(text,columnwidth) 給定這兩個參數和您當前的Y位置,您應該能夠確定您的結果位置是否超過您的最大頁面高度,主要是280像素。一旦你到達下一頁,你就不能寫信提供一個,所以你可能會被迫將你的文本分成兩個獨立的塊,當所有的列都寫完後,最後一塊將被寫入。

有一些功能圍在那裏,也許這就是你需要:
https://gist.github.com/johnballantyne/4089627

根據你的列是一個多細胞的假設,所有你需要做的是通過你的列寬,cellheight,和你的文字。