编程语言
首页 > 编程语言> > php – TCPDF – 如何在使用tcpdf创建的pdf中显示具有绝对位置的div?

php – TCPDF – 如何在使用tcpdf创建的pdf中显示具有绝对位置的div?

作者:互联网

我有以下tcpdf代码:

    <?php
    require_once('config/lang/eng.php');
    require_once('tcpdf.php');

    // Extend the TCPDF class to create custom Header and Footer
    class MYPDF extends TCPDF {

      //Page header
      public function Header() {
      }

      // Page footer
      public function Footer() {
      }
    }

    // create new PDF document
    $pdf = new MYPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);

    // set document information
    $pdf->SetCreator(PDF_CREATOR);
    $pdf->SetAuthor('Stimart');
    $pdf->SetTitle('test');
    $pdf->SetSubject('test');
    $pdf->SetKeywords('test');

    // set default header data
    $pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING);

    // set header and footer fonts
    $pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
    $pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));

    // set default monospaced font
    $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);

    //set margins
    $pdf->SetMargins(40, 40, PDF_MARGIN_RIGHT);
    $pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
    $pdf->SetFooterMargin(PDF_MARGIN_FOOTER);

    //set auto page breaks
    $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);

    //set image scale factor
    $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);

    //set some language-dependent strings
    $pdf->setLanguageArray($l);

    // ---------------------------------------------------------

    // set font
    $pdf->SetFont('times', '', 12);

    // add a page
    $pdf->AddPage();

    // set some text to print
    $html = '<div style="position: absolute; top:200px; left:300px;">Hi, I am an ABSOLUTE div.</div>';

    $pdf->writeHTML($html, true, false, false, false, '');
    // ---------------------------------------------------------
    $pdf->lastPage();
    //Close and output PDF document
    $pdf->Output('test.pdf', 'I');

    //============================================================+
    // END OF FILE                                                
    //============================================================+

在“//设置一些要打印的文本”之后,我设置了要显示的html代码,但它没有按预期工作.
在这种情况下,我需要传递一个具有绝对位置的div,但是当代码运行时,它会创建显示相对位置div的pdf页面.

我该如何解决这个恼人的问题?

解决方法:

TCPDF的CSS支持非常有限.它不支持所有属性.

目前,仅支持以下CSS属性:

> font-family
> font-size
> font-weight
> font-style
>颜色
>背景色
>文字装饰
>宽度
>身高
> text-align

所以尝试删除其他属性,并告诉它是否有效.

标签:html,tcpdf,absolute,php
来源: https://codeday.me/bug/20190725/1528829.html