php如何实现html内容生成图片
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php如何实现html内容生成图片相关的知识,希望对你有一定的参考价值。
我想把一个html页面的整个源码写入图片,从而生成一个图片,但是直接用GD库写的话,整个源码就会写入图片,css样式和标签不能转化成样式的形式,如下图所示:
请问:我如果想实现css在页面里的样式,如何才能做到?
感谢!
找到了一种实现方法---phantomjs,可以直接实现html内容转成图片格式
地址:http://www.woiweb.net/phantomjs-quick-use-tutorials.html
我是用DOMPDF转成pdf,可是文字不能换行,而且有的显示,有的不显示
追答试试这个
DOMPDF负责渲染文本的text_frame_reflower.cls.php文件,把以空格、分隔符为界的分割模式,修改为以一个utf-8字符为界的分隔模式。
将此代码:
// ........text_frame_reflower.cls.php ........// split the text into words
$words = preg_split('/([\\s-]+)/u', $text, -1, PREG_SPLIT_DELIM_CAPTURE);
$wc = count($words);
// ...............................................
换成:
// split the text into words
preg_match_all("/./u", $text, $array);
$words = array(0);
$wc = count($words);
// ..
引用自http://blog.csdn.net/yuhui_fish/article/details/10520355
参考技术A 可以拿取CSS文件后,在PHP中编辑到HTML页面中。然后在生成图片。php生成图片验证码
<?php /** * 生成验证码 * @param int $type * @param int $length * @return string */ function buildRandomString($type=1,$length=4){ if ($type == 1) { //join()函数是implode()函数的别名,用来将数组变成字符串,第一个参数为数组元素之间放置的内容 $chars = join ( "", range ( 0, 9 ) ); } elseif ($type == 2) { //range()函数创建一个包含指定范围的元素的数组 //array_merge()函数把一个或多个数组合并为一个数组 $chars = join ( "", array_merge ( range ( "a", "z" ), range ( "A", "Z" ) ) ); } elseif ($type == 3) { $chars = join ( "", array_merge ( range ( "a", "z" ), range ( "A", "Z" ), range ( 0, 9 ) ) ); } if ($length > strlen ( $chars )) { exit ( "字符串长度不够" ); } $chars = str_shuffle ( $chars );//str_shuffle()函数随机打乱字符串中的所有字符 return substr ( $chars, 0, $length );//substr()函数返回指定部分的字符串 }
以上是关于php如何实现html内容生成图片的主要内容,如果未能解决你的问题,请参考以下文章