我有一个网页,编码在 codeigniter 框架上,其中列出了所有可用的证书。然后,我可以通过单击其名称或通过选中复选框来打印证书,如果用户想要打印多于1个证书。
目前我所做的只是查看证书的html,用户必须右键单击他们的浏览器并点击打印。哪一页适用于1页证书。
但是当我拥有2个或更多证书时,证书并不完美。据我所知,我不能将html页面设置为A4尺寸的打印。
Codeigniter有一个图像处理库。 http://codeigniter.com/user_guide/libraries/image_lib.html
但找不到我想要的东西。
有没有办法将这些html页面转换成图像,我可以在以后打印出来?或者我应该尝试其他库?
答案 0 :(得分:2)
我会使用DOMPDF来创建PDF文档。您可以正常生成html,然后使用加载视图函数的第三个参数返回PDF处理的html。
你的控制器里有这样的东西;
$this->load->helper('pdf');
$html = $this->load->view('certificate_view', array(), TRUE);
$attachment_location = $_SERVER["DOCUMENT_ROOT"] . '/certs/'.$title.'.pdf';
pdf_create($html, $title, $stream=FALSE, $orientation='portrait');
// send open/save pdf dialog to user
header('Cache-Control: public'); // needed for i.e.
header('Content-Type: application/pdf');
header('Content-Disposition: attachment; filename="'.$title.'"');
readfile($attachment_location);
exit;
Codeigniter DOMPDF库是here。
答案 1 :(得分:0)
您可以使用这个简单的tutorial将html转换为图片。它使用imagick而不使用gd库。