【问题标题】:TCPDF - How can I show a div with absolute position in a pdf created with tcpdf?TCPDF - 如何在使用 tcpdf 创建的 pdf 中显示具有绝对位置的 div?
【发布时间】:2015-03-22 05:26:44
【问题描述】:

我有以下 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 页面。

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

【问题讨论】:

标签: php html tcpdf absolute


【解决方案1】:

TCPPDF 的 CSS 支持非常有限。它不支持所有属性。

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

  • 字体系列
  • 字体大小
  • 字体粗细
  • 字体样式
  • 颜色
  • 背景色
  • 文字装饰
  • 宽度
  • 身高
  • 文本对齐

所以尝试删除其他属性,并判断它是否有效。

【讨论】:

    猜你喜欢
    • 2015-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-01
    • 1970-01-01
    • 2013-01-11
    • 2012-07-17
    相关资源
    最近更新 更多