2012-10-21 42 views
0

我找到这个库将HTML转换为PDFdompdf如何将php html输出转换为pdf在线?

示例源代码如下所示:

<?php 
    require_once("dompdf/dompdf_config.inc.php"); 
    $html = 
     '<html><body>'. 
     '<p>Put your html here, or generate it with your favourite '. 
     'templating system.</p>'. 
     '</body></html>'; 

    $dompdf = new DOMPDF(); 
    $dompdf->load_html($html); 
    $dompdf->render(); 
    $dompdf->stream("sample.pdf"); 
?> 

有没有办法导入PHP输出到这个代码?

或者是否有更好的方法将PHP输出转换为PDF?

+1

“导入PHP输出”?您可以将它添加到'$ html'字符串中... – Eric

回答

0

您也可以使用输出缓冲区来实现此目的。过去我已经使用了DOMPDF。

/* Use output buffer capture */ 
ob_start(); 
require_once "Renderer.php"; 
$layoutHTML = ob_get_contents(); 
ob_end_clean(); 

$ layoutHTML将处理HTML。

然后你就可以使用DOMPDF,你在你的问题

$dompdf->load_html($html); 

谨慎,这可以咀嚼大量的内存所描述的方式(根据课程的问题)。

+0

ob_start()代码完美地工作。但它看起来像DOMPDF库不适用于大页面。我想我会更好地使用您提供的代码将输出发送到HTML文件中。 – cibermesias

0

$dompdf->load_html($html);方法只是简单地取一个字符串参数。

$html变量可以使用file_get_contents从网站来填充:

$html = file_get_contents('http://www.google.com'); 

你还可以读取文件:

$html = file_get_contents('/path/to/file.txt'); 

或者你可以使用输出控制:

ob_start(); 
include 'my.awesome.template.html'; 
$html = ob_get_clean();