2015-03-10 23 views
7

Tôi đang sử dụng wkhtmltopdf để tạo báo cáo ngay bây giờ tôi đã gặp phải tình huống mà tôi phải hiển thị chân trang ở cuối trang tôi đã cố gắng giải quyết vấn đề này bằng css hoạt động trên trang đơn giản nhưng không phải trên wkhtmltopdf tôi tạo ra trang đây là HTML của tôi đangLàm cách nào để thêm chân trang ở cuối trang wkhtmltopdf

<footer id="footer"> 
    <p>Hello World</p> 
</footer> 

Và css của tôi là thế này

#footer { 
    position:fixed; 
    height:50px; 
    background-color:red; 
    bottom:0px; 
    left:0px; 
    right:0px; 
    margin-bottom:0px; 
} 

tôi cũng đã thử mã này đưa ra trên trang wkhtmltopdf

<script> 
    window.onload = function() { 
    var vars = {}; 
    var x = document.location.search.substring(1).split('&'); 
    for (var i in x) { 
     var z = x[i].split('=', 2); 
     [z[0]] = unescape(z[1]); 
    } 

    if current page number == last page number 
     if (vars['page'] == vars['topage']) { 
      document.querySelectorAll('#footer')[0].textContent = 'extra text here'; 
     } 
    }; 
</script> 

Lưu ý Tôi không sử dụng lệnh cmd Tôi đang sử dụng CodeIgniter. Có bất kỳ tùy chọn nào của họ như

$this->wkhtmltopdf->setOptions(array(
       'orientation' => 'landscape' 
       )); 
+0

Bạn đã thử vị trí: tuyệt đối thay thế? – Sirence

+0

vâng tôi đã thử nó nó đang làm việc trên trang đơn giản nhưng không phải trong trang wkhtmltopdf –

Trả lời

2

Khi thêm trang của bạn, bạn có thể chuyển vào chân trang qua tùy chọn trang.

$footer = $this->load->view('footer', $data, true); 

$page_options = [ 
    'footer-html' => "".str_replace("\n", ' ', $footer)."" 
]; 

$pdf = new Pdf($pdf_options); 
$pdf->addPage($view, $page_options); // page invoice 

Bạn cũng có thể sử dụng header-html để làm tiêu đề. Điều này sẽ áp dụng chân trang cho mỗi trang bạn thêm với tùy chọn đó.

+0

Bạn nên đánh dấu câu trả lời này và vấn đề gần bạn đã mở https://github.com/wkhtmltopdf/wkhtmltopdf/issues/2238 –

Các vấn đề liên quan