Tôi đang sử dụng thư viện Zend Framework và DOMPDF. Khi tôi kiểm tra nó với css nội tuyến, mọi thứ hoạt động hoàn hảo. Nhưng khi tôi cố gắng di chuyển mã css vào các quy tắc tệp bên ngoài không được áp dụng cho trang html.DOMPDF không hoạt động với tệp css bên ngoài
Đây là mã của tôi.
- Mã của hành động điều khiển, mà tạo pdf
require_once ("DOMPDF/dompdf_config.inc.php");
$this->_helper->layout->disableLayout();
$html = $this->view->render('index/dom.phtml');
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->render();
$pdfContent = $dompdf->output();
file_put_contents('sample.pdf', $pdfContent);
die("test");
2.Code của tương ứng view (index/dom.phtml)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link type="text/css" href="/themes/css/pdf.css" rel="stylesheet" media="screen"/>
</head>
<body>
<div>Tamara testing</div>
<table border="1">
<tr>
<th>Column 1</th>
<th>Column 2</th>
</tr>
<tr>
<td>Value 1</td>
<td>Value 2</td>
</tr>
</table>
</body>
</html>
3.And tập tin css của tôi:
div {color: red;}
Làm thế nào để làm cho nó hoạt động?
UPDATE:
Để làm cho nó hoạt động tôi đã thay đổi những điều sau đây:
1.In controller action của thêm đường cơ sở cho các tập tin bên ngoài
$dompdf->set_base_path(APPLICATION_PATH."/../public/themes/css/");
2.In xem sự thay đổi href thuộc tính của thẻ liên kết. Làm cho nó liên quan đến con đường cơ bản trong bước 1.
<link type="text/css" href="pdf.css" rel="stylesheet" />
Trong trường hợp ai đó tìm thấy điều này trên một công cụ tìm kiếm (giống như tôi đã làm), xin lưu ý có một tùy chọn khác gọi là 'DOMPDF :: set_protocol()', xem câu trả lời của tôi bên dưới để biết thêm thông tin. –