首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >加载Codeigniter的视图文件时,DOM PDF不工作

加载Codeigniter的视图文件时,DOM PDF不工作
EN

Stack Overflow用户
提问于 2011-12-31 19:49:29
回答 2查看 6.1K关注 0票数 0

我正在尝试创建PDF文件使用DOM pdf和Codeigniter。我的控制器中有以下脚本,并且我将DOM文件夹保存在我的控制器中。但是当我运行脚本时,我得到了致命的错误消息。

但是当我将模型中的值发送到控制器中的DOMPDF的$html时。我可以生成pdf。

你能帮我解决这个错误吗?

代码语言:javascript
复制
    include_once('dompdf/dompdf_config.inc.php'); 
    $html= $this->load->view('view_pdf');
    $dompdf = new DOMPDF();
    $dompdf->load_html($html);
    $dompdf->set_paper("a4", "landscape" ); 

    $dompdf->render();
    $dompdf->stream("my_pdf.pdf", array("Attachment" => 0));   

这是我的视图文件;

代码语言:javascript
复制
<html>
 <head>
<style>
    #header { position: absolute; left: 0; top: -50px; right: 0; height: 140px; text-align:  center;  }
    #footer {position: fixed ; left: 0px; bottom: -20px; right: 0px; height: 30px; font-size:10; }
    #footer .page:after { content: counter(page, upper-roman); }


        #table-6 {
        width: 100%
        border: 1px solid #B0B0B0;
        }
        #table-6 tbody {
        /* Kind of irrelevant unless your .css is alreadt doing something else */
        margin: 0;
        padding: 0;
        border: 0;
        outline: 0;
        font-size: 100%;
        vertical-align: baseline;
        background: transparent;
        }


        #table-6 td {
        padding: 3px 10px;
        font-size: 12px;
        font-weight: normal;
        text-align:center;
        }
        #table-6 tr:nth-child(even) {
        background: #F2F2F2;
        font-size: 12px;
        font-weight: normal;
        }




 </style>

  </head>

    <body>


     This is a test 
    </body>

    </html>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-01-04 04:33:20

根据CodeIgniter documentation on views,您必须修改对load->view()的调用,以便将数据作为字符串返回给控制器,而不是推送到web浏览器。尝试修改控制器代码,如下所示:

代码语言:javascript
复制
include_once('dompdf/dompdf_config.inc.php');
$html= $this->load->view('view_pdf','',true);
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->set_paper("a4", "landscape" );

$dompdf->render();
$dompdf->stream("my_pdf.pdf", array("Attachment" => 0));

我所做的唯一更改是向$this->load->view()添加了必要的参数。

(我不使用CodeIgniter。是否有CI用户有什么需要补充的?)

票数 2
EN

Stack Overflow用户

发布于 2021-01-14 02:57:05

代码语言:javascript
复制
include_once('dompdf/dompdf_config.inc.php'); 
$this->load->view('view_pdf');
$html = $this->output->get_output();
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->set_paper("a4", "landscape" ); 
$dompdf->render();
$dompdf->stream("my_pdf.pdf", array("Attachment" => 0));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8687930

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档