我正在使用DOMPDF創建PDF文件。我有很大的內容需要用PDF格式提取,我們需要在所有頁面中添加一些標題。因此,任何人都可以打電話來告訴我們如何在PDF中添加頁眉和頁腳,以便使用DOMPDF在頁面中顯示頁眉。PHP中使用DOMPDF的PDF頁面中的頁眉
29
A
回答
18
DOMPDF wiki有一個FAQ條目:有沒有添加頁眉和頁腳或頁碼的方法?。
所以,你可以在下面的「內聯PHP」 -snippet添加到您的HTML輸入(添加了類似page_text
-call爲您的頁腳):
<script type="text/php">
if (isset($pdf)) {
$font = Font_Metrics::get_font("helvetica", "bold");
$pdf->page_text(72, 18, "Header: {PAGE_NUM} of {PAGE_COUNT}",
$font, 6, array(0,0,0));
}
</script>
如果你想,而實現這個您caller-side(在PHP代碼中直接表示),您必須調用DOMPDFS的get_canvas()
-方法,該方法返回底層的PDF-Renderer,它允許您像上例中那樣調用page_text
方法。讓我告訴你我是什麼意思:
// your dompdf setup
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->render();
// add the header
$canvas = $dompdf->get_canvas();
$font = Font_Metrics::get_font("helvetica", "bold");
// the same call as in my previous example
$canvas->page_text(72, 18, "Header: {PAGE_NUM} of {PAGE_COUNT}",
$font, 6, array(0,0,0));
最終,你必須調用load_html
後page_text
(只是嘗試一下)。
50
在0.6.0代碼中,您將能夠使用HTML + CSS來生成頁眉和頁腳。與使用嵌入式PHP相比,有一些限制(例如,沒有PAGE_COUNT佔位符),所以這是否可行取決於您的需求。
下面的代碼將產生一個two-page document with a header and footer:
<html>
<head>
<style>
@page { margin: 180px 50px; }
#header { position: fixed; left: 0px; top: -180px; right: 0px; height: 150px; background-color: orange; text-align: center; }
#footer { position: fixed; left: 0px; bottom: -180px; right: 0px; height: 150px; background-color: lightblue; }
#footer .page:after { content: counter(page, upper-roman); }
</style>
<body>
<div id="header">
<h1>Widgets Express</h1>
</div>
<div id="footer">
<p class="page">Page </p>
</div>
<div id="content">
<p>the first page</p>
<p style="page-break-before: always;">the second page</p>
</div>
</body>
</html>
您還可以使用兩種風格的組合,如果你需要訪問一些缺失的功能。使用page_text
方法添加的PDF對象和文本呈現在HTML內容之上。
相關問題
- 1. 使用dompdf將頁面轉換爲PDF
- 2. 在dompdf中添加帶頁碼的頁眉和頁腳
- 3. Prawn中的頁眉和頁腳PDF
- 4. 如何添加「頁眉」中的所有頁面的PDF
- 5. 從PDF-DOMPDF或任何PHP庫中刪除頁面大小
- 6. 在使用AlivePDF創建的PDF中添加頁眉和頁腳
- 7. 隱藏頁眉/頁腳在PDF中
- 8. 使用PHP從.pdf中提取頁面
- 9. Dompdf:使用不同頁腳或頁面
- 10. dompdf - 縮放pdf以適合頁面
- 11. DOMpdf,將新頁面添加到PDF
- 12. 如何抑制頁眉和頁面的頁面頁眉?
- 13. dompdf:如何在除第一頁以外的每個頁面上添加頁眉?
- 14. 使用DomPDF設置PDF文件的默認頁面佈局
- 15. Groovy中的頁眉和頁面
- 16. 在html中嵌入php將頁眉(頁面的頂部)包含到頁面中
- 17. 頁面上的頁眉。 (wordpress)
- 18. 如何使用C#中的iTextsharp版本5.2.0在pdf的所有頁面中添加頁眉和頁腳
- 19. 使用itext將頁眉和頁腳添加到pdf中xmlworker
- 20. java創建頁眉和頁腳的pdf
- 21. 重定向頁眉php成功頁面
- 22. 從許多頁面中使用的頁眉加載CSS文件
- 23. Freemarker,PDF,頁眉/頁腳和分頁符
- 24. 如何使用bootstrap3和php突出顯示頁眉中的活動頁面?
- 25. 如何使用java中的itext從pdf中檢索頁眉和頁腳?
- 26. 如何使用Java中的iText從PDF文件中刪除頁眉和頁腳
- 27. 使用Dompdf從CakePHP 2查看.pdf頁面
- 28. 添加頁眉和頁腳,以及頁面編號爲pdf
- 29. iText PDF刪除特定頁面的頁眉
- 30. 如何將JasperReport中頁面頁眉的內容導出到Excel的頁眉?
感謝vstm ...我試圖在標題中打印一些html標籤。我也嘗試過TCPDF ..但是我無法使用HTML標籤,它只支持文本。在我的要求中,我必須創建一個報告,報告標題或列名應顯示在所有頁面中。我找不到任何在PDF中打印我的HTML標頭的東西。如果你知道什麼,請幫助我。 – Sandy
你的代碼的第二部分是更好的,沒有內聯腳本的PHP代碼。但「//添加標題」部分必須位於「$ dompdf-> render();」之後爲了工作。 – machineaddict
這必須是被接受的答案 – Epoc