【问题标题】:Convert html to pdf in codeigniter在codeigniter中将html转换为pdf
【发布时间】:2013-11-21 13:26:09
【问题描述】:

我正在使用dompdf library 将 html 内容转换为 pdf。我遇到了一些问题。

1) 我能够生成 pdf,但在我的 HTML 内容中有一些图像,但是当我生成 pdf 时,图像不是 PDF 格式。

2) 此外,PDF 未显示完整数据意味着数据肯定会出现但不可见完整宽度。

请帮忙!!!

【问题讨论】:

  • 请记住,dompdf 在 css 到 pdf 问题中占有一席之地。不要使用嵌套表,避免浮动
  • @SpYk3HH 您的信息可能已过期。嵌套表很好。浮动是一项正在进行的工作,但存在一些支持。目前最大的问题是 dompdf 无法跨页面拆分表格单元格,这至少会导致渲染中断,最坏的情况是资源耗尽。这个问题可能是您对嵌套表的看法不佳的原因。
  • @BrianS LoL,您的信息已过期。我指的是上周我最近下载和使用的最新库!
  • @SpYk3HH 因为我们的话题太离谱了,如果您愿意,请随时在此处或support group 发布一些内容。我们总是乐于尝试找出问题所在,创造问题以解决新问题,并在可能的情况下提出解决方法。我认为您的一些问题应该很容易解决(例如桌子位置)。

标签: codeigniter dompdf


【解决方案1】:

这是我将我的 html 转换为 pdf 的示例......我希望我能给你一些想法

图书馆:

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Dompdf_gen {

    public function __construct() {

        require_once APPPATH.'third_party/dompdf/dompdf_config.inc.php';

        $pdf = new DOMPDF();

        $CI =& get_instance();
        $CI->dompdf = $pdf;

    }

}

控制器:

function pdf($id){

            $data['contract_items_all']     = $this->contract_items->get_serial_infos($this->uri->segment(4));
            $data['child_info']             = $this->contract_items->get_children_info($cid);

            $this->load->library('dompdf_gen');
            $html = $this->load->view('contracts/equipment_pdf', $data, true);//this equipment_pdf contain the html that you will convert to pdf
            $this->load->library('dompdf_gen');
            $dompdf = new DOMPDF();

            // Convert to PDF
            $this->dompdf->load_html($html);
            $this->dompdf->render();
            $this->dompdf->stream("Contract.pdf",array("Attachment"=>0)); // VIEW IN OTHER TAB
            //$this->dompdf->stream("Contract.pdf"); // SAVE FILE TO DISK
    }

【讨论】:

    【解决方案2】:

    为什么要加载库两次?

    // ...
    
    $this->load->library('dompdf_gen');
    $html = $this->load->view('contracts/equipment_pdf', $data, true);//this equipment_pdf contain the html that you will convert to pdf
    $this->load->library('dompdf_gen');
    $dompdf = new DOMPDF();
    
    // ...
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-13
      • 2019-07-05
      • 2015-06-29
      • 2017-05-06
      • 2011-05-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多