2011-12-27 86 views
1
<?php 

include('../helper/app2.php'); 

$admin = new admin; 

$preview = $admin->pdfPreview(); 

$html = '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><title> New Document </title><meta name="Generator" content="EditPlus"><meta name="Author" content=""><meta name="Keywords" content=""> <meta name="Description" content=""> <link href="../../css/style.css" rel="stylesheet" type="text/css" /></head><body><div class="biegeBox"><div class="cardContainer"><div class="cardImg" style="background-image:url(http://'.$_SERVER['SERVER_NAME'].'/demo/'. $preview[0]['image'].'); background-repeat:no-repeat;"><div class="cardQuote">'.$preview[0]['desc'].'</div></div></div></div></body></html>'; 

if (isset($html)) { 

    require_once("dompdf_config.inc.php"); 

    $dompdf = new DOMPDF(); 
    $dompdf->load_html($html); 
    $dompdf->set_paper($_POST["paper"], $_POST["orientation"]); 
    $dompdf->render(); 

    $dompdf->stream("dompdf_out.pdf", array("Attachment" => false)); 

    exit(0); 
} 
?> 

上面的代码是我用来从dom创建pdf的,但是它的pdf中没有渲染图像。任何人都可以帮助我解决它。看完这个DOMPDF Page background (or alternatives?)问题和答案我改变了背景属性。domPDF背景图像不在PDF中呈现

+1

确保访问远程资源的设置是正确的,特别是DOMPDF_ENABLE_REMOTE和allow_url_fopen都是正确的。使用dompdf 0.5.x或0.6.x?在0.6.x中,您可以访问dompdf/www/setup.php(通过您的Web服务器)来查找任何红旗。 – BrianS 2011-12-27 18:48:24

+1

是,DOMPDF_ENABLE_REMOTE和allow_url_fopen都是true并启用。 – 2011-12-27 19:27:52

+0

您可以发布产生的HTML + CSS而不是生成它的PHP吗?您的包含div的宽度/高度样式是?你使用的是哪个版本的dompdf? – BrianS 2012-01-03 19:43:53

回答

0

这可能并不适用于你充分,但在我的共享主机的环境我能包括图像的唯一途径是让图像在同一目录中的HTML文件,并通过其相对路径是指它