tcpdf位于页面底部的页脚

时间:2022-08-18 09:49:32

I am using tcpdf to add a pdf to an email that is sent out by the system. When the email arrives, the office opens it and prints off the pdf and posts it for customers not setup on the system for email. The problem is that when tcpdf generates the pdf's it is putting the footer directly under the contents of the letter. The problem with this is that the pdf is using the company's letterhead template and puts the header in the correct position, but the footer is supposed to go at the bottom of the page, but it moves according to the position of the content, where as for it to look like the same as their letterhead needs to be at the bottom.

我使用tcpdf将pdf添加到系统发出的电子邮件中。当电子邮件到达时,办公室打开它并打印出pdf并将其发布给未在系统上设置电子邮件的客户。问题是,当tcpdf生成pdf时,它会将页脚直接放在字母的内容之下。这个问题是pdf使用公司的信头模板并将标题放在正确的位置,但页脚应该放在页面的底部,但它会根据内容的位置移动,其中as因为它看起来像他们的信头需要在底部。

I am currently using the following (I know the POSTS's are insecure, im sorting that one shortly when I go through everything) :

我目前正在使用以下内容(我知道POSTS是不安全的,我很快就会对所有内容进行排序):

    <?php

    $message = $_POST[emailformmessage];
    $cf_id = $_POST[cf_id];
    $leadname = $_POST[leadname];
    $postcode = $_GET[postcode];
    $address = $_GET[address];
    $date = $_GET[date];
    $town = $_GET[town];
    $business = $_POST[businessname];




    $html = "<html>
    <head>
    <style>

    .container {width:680px; font-family:Arial, Helvetica, sans-serif; font-size:44px;}

    .header {margin-left:50px; margin-right:50px; margin-top:15px;}

    .customeraddress {color:#000;margin-left:65px; margin-right:65px; margin-top:25px; text-align:left;}

    .delivered {color:#fff; background:#344EA2; margin-left:80px; margin-top:5px; text-align:center;padding:15px; margin-right:80px;}

    .titles_L {color:#fff; background:#13155C; margin-left:80px; margin-top:5px; text-align:center; padding:5px; width:250px; float:left; font-weight:bold;}

    .titles_R {color:#fff; background:#13155C; margin-top:5px; text-align:center; padding:5px; margin-right:80px; width:250px; float:left; font-weight:bold;}

    .body-text { background:#fff;color:#333; margin-left:65px; margin-top:5px; text-align:left; padding:15px 0px 15px 0px; margin-right:65px; overflow:auto;}

    .terms {color:#fff;margin-left:80px; margin-top:5px; text-align:center;  padding:15px; margin-right:80px;}

    .footer {margin-left:50px; margin-top:5px; text-align:left; font-size:40px; padding:15px; margin-right:50px; color:#000; overflow:auto;}

    .footer a {}

    .footer_left {float:left; width:100px;}

    .footer_right {float:left;}

    .clear {clear:both; float:none;}

    .footerclear {clear:both; float:none; width:100%; padding:8px;}

    .pricerow {}

    .emailpricesgasoil {width:240px; float:left;  padding-bottom:15px; padding-top:15px; margin:2px 0px 2px 0px;background:#f4f4f4;color:#EE3B33;}

    .emailpricesderv {width:240px; float:left;  padding-bottom:15px; padding-top:15px; margin:2px 0px 2px 0px;background:#f4f4f4;color:#EE3B33;}

    .emailpriceskero {width:240px; float:left;  padding-bottom:15px; padding-top:15px; margin:2px 0px 2px 0px;background:#f4f4f4;color:#EE3B33;}

    .emailfueldescgasoil {width:250px; float:left;  padding-bottom:15px; padding-top:15px;margin:2px 0px 2px 0px;background:#f1f1f1;}

    .emailfueldescderv {width:250px; float:left;  padding-bottom:15px; padding-top:15px; margin:2px 0px 2px 0px;background:#f1f1f1;}

    .emailfueldesckero {width:250px; float:left;  padding-bottom:15px; padding-top:15px;  margin-top:2px; margin:2px 0px 2px 0px; background:#f1f1f1;}
    </style>
    </head>
    <body>


    <div class=\"container\">

    <img class=\"header\" src=\"http://key4design.co.uk/chandlers/images/chandlers_header.jpg\" width=\"996\" height=\"326\">

    <div class=\"customeraddress\">
    $leadname<br/>
    $business<br/>
    $address<br/>
    $town<br/>
    $postcode<br/>
    $date<br/>
    </div>
    <div class=\"clear\"></div>

    <div class=\"body-text\">
     $message</div>
    <div class=\"clear\"></div>
    <div class=\"footer\">
    <img class=\"footerimg\" src=\"http://key4design.co.uk/chandlers/images/chandlers_footer.jpg\" width=\"996\" height=\"261\">
    <div class=\"footerclear\"></div>
    </div>

    </body>
    </html>";
    $old_limit = ini_set("memory_limit", "16M");
    require_once("./pdf/config/lang/eng.php");
    require_once("./pdf/tcpdf.php");
    $pdf = new TCPDF("portrait", PDF_UNIT, "a3", true, "UTF-8", false);
    // set font
    $pdf->SetFont("helvetica", "", 10);
    // add a page
    $pdf->AddPage();
    $pdf->writeHTML($html, true, false, true, false, "");
    // reset pointer to the last page
    $pdf->lastPage();
    //Close and output PDF document
    if(!file_exists("./pdf/doc/file.pdf") || is_writable("./pdf/doc/file.pdf"))
    $pdf->Output("./pdf/doc/file.pdf", "F");
    else
    exit("./pdf/doc/file.pdf");
    ?>

2 个解决方案

#1


4  

Seems you only added an image in the footer, why not just use the Image Function

似乎你只在页脚中添加了一个图像,为什么不使用图像功能

$pdf->AddPage();
$pdf->writeHTML($html, true, false, true, false, "");
$pdf->Image('http://key4design.co.uk/chandlers/images/chandlers_footer.jpg', 100, 350);
// reset pointer to the last page
$pdf->lastPage();  

You might have to disable the default footer

您可能必须禁用默认页脚

$pdf->setPrintFooter(false);

#2


0  

$pdf->SetAutoPageBreak(false);

this will prevent tcpdf from auto generating next page and you can adjust your footer on the same page.

这将阻止tcpdf自动生成下一页,您可以在同一页面上调整页脚。

#1


4  

Seems you only added an image in the footer, why not just use the Image Function

似乎你只在页脚中添加了一个图像,为什么不使用图像功能

$pdf->AddPage();
$pdf->writeHTML($html, true, false, true, false, "");
$pdf->Image('http://key4design.co.uk/chandlers/images/chandlers_footer.jpg', 100, 350);
// reset pointer to the last page
$pdf->lastPage();  

You might have to disable the default footer

您可能必须禁用默认页脚

$pdf->setPrintFooter(false);

#2


0  

$pdf->SetAutoPageBreak(false);

this will prevent tcpdf from auto generating next page and you can adjust your footer on the same page.

这将阻止tcpdf自动生成下一页,您可以在同一页面上调整页脚。