文字信息
换行
这样一段html代码,如何保持他的格式,生成一张图片
回复讨论(解决方案) 可能的现成途径:
1、使用 java 的 html2image
2、使用 tcpdf 生成 pdf 然后...
3、使用 php 的截屏函数 imagegrabscreen、imagegrabwindow
我补充一个
https://zh.wikipedia.org/wiki/webkit
https://en.wikipedia.org/wiki/webkit
楼上的连接无法访问
还可以用 dompdf
先 define('dompdf_pdf_backend', 'gd'); 就可生成图片
无法访问请允许我做一个233的表情..........
额,表示如何?
示例 define('dompdf_pdf_backend', 'gd');require_once(dompdf_config.inc.php);$html =
dompdf 的下载地址
http://code.google.com/p/dompdf/downloads/list
示例 define('dompdf_pdf_backend', 'gd');require_once(dompdf_config.inc.php);$html =
版主我在问一下哈, 我在本地试了试,为什么没有看到生成的图片呢,也没有提示错误
不同版本的 dompdf 会有不同的表现(我这是 dompdf.php,v 1.24 2009-04-29 的)
它使用 domdocument 解析 html
print_r($dompdf->_xml);
可以看到解析是否正常
不同版本的 dompdf 会有不同的表现(我这是 dompdf.php,v 1.24 2009-04-29 的)
它使用 domdocument 解析 html
print_r($dompdf->_xml);
可以看到解析是否正常
看到提示错误了
fatal error: cannot access protected property dompdf::$_xml in g:\appserv\www\6\1.php on line 16
你的php版本是多少?
_xml 属性的确是保护模式的
dompdf.cls.php 中有
class dompdf {
protected $_xml;
但我在 php5.4.12 中依然可以看到
dompdf object
(
[_xml:protected] => domdocument object
(
[doctype] => (object value omitted)
....
你可以将他改为 public 模式的
谢谢版主热心回答
我的php版本是 php version 5.2.6
我下载的dompdf是 @version $id: dompdf.cls.php 468 2012-02-05 10:51:40z fabien.menager 应该是最新的
你的php版本是多少?
_xml 属性的确是保护模式的
dompdf.cls.php 中有
class dompdf {
protected $_xml;
但我在 php5.4.12 中依然可以看到
dompdf object
(
[_xml:protected] => domdocument object
(
[doctype] => (object value omitted)
....
你可以将他改为 public 模式的
我把xml改成public 里 现在提示错误
domdocument object ( )
warning: cannot modify header information - headers already sent by (output started at g:\appserv\www\6\1.php:16) in g:\appserv\www\6\include\gd_adapter.cls.php on line 736
warning: cannot modify header information - headers already sent by (output started at g:\appserv\www\6\1.php:16) in g:\appserv\www\6\include\gd_adapter.cls.php on line 751
看样子是对ssl 也下手了,去掉http后的s应该能访问,webkit也不是什么关键词
http://zh.wikipedia.org/wiki/webkit
http://en.wikipedia.org/wiki/webkit
不过 php 好像也没webkit
http://www.phpclasses.org/package/7460-php-convert-html-to-pdf-using-the-webkit-engine.html
看看这个有没帮助
你下载的 dompdf 本身应该是没有问题的(这一点你可以通过生成 pdf 加以验证)
由于 dompdf 提供了生成图片的功能,所以也只是在正确生成 pdf 的基础上,通过定义 dompdf_pdf_backend 常量将其图片生成的功能调出来而已
至于在测试时修改它的部分代码,这也是出于测试、分析的需要。也当然是自己对修改产生的后果负责
我把xml改成public 里 现在提示错误
domdocument object ( )
warning: cannot modify header information - headers already sent by (output started at g:\appserv\www\6\1.php:16) in g:\appserv\www\6\include\gd_adapter.cls.php on line 736
warning: cannot modify header information - headers already sent by (output started at g:\appserv\www\6\1.php:16) in g:\appserv\www\6\include\gd_adapter.cls.php on line 751
谢谢版主的热心回复
不同版本的 dompdf 会有不同的表现(我这是 dompdf.php,v 1.24 2009-04-29 的)
它使用 domdocument 解析 html
print_r($dompdf->_xml);
可以看到解析是否正常
可否把你的版本发出来测试一下,用的0.5.2这个版本的测试了,没效果,图片没显示,也没发现有xml支持的
不报错似乎不应该
gd写文字总是需要字体文件的
dompdf的默认字体是 times-roman
为此作为测试,你可以将任意一款ttf中文字体复制到 lib/fonts 目录中,并更名为 times-roman.ttf
版本声明
不报错似乎不应该
gd写文字总是需要字体文件的
dompdf的默认字体是 times-roman
为此作为测试,你可以将任意一款ttf中文字体复制到 lib/fonts 目录中,并更名为 times-roman.ttf
版本声明 _xml);
可以看到解析是否正常
可否把你的版本发出来测试一下,用的0.5.2这个版本的测试了,没效果,图片没显示,也没发现有xml支持的
gd_adapter.cls.php 的751行屏蔽header(content-type: image/png);這句就報錯了
我測試了一下0.6版,就算排除了所有的錯誤之後對於html的解析還是非常不理想
我測試了一下0.6版,就算排除了所有的錯誤之後對於html的解析還是非常不理想
是的,是很不理想,php这个是个软肋啊
不满意可以改,不想改就自己写
只要对 css 很熟悉的话,做起来并不复杂
用 domdocument::loadhtml 载入 html
析出各个元素的属性
计算每个盒子的尺寸和位置 这个比较复杂,需对 css 很熟悉
逐一绘制
不满意可以改,不想改就自己写
只要对 css 很熟悉的话,做起来并不复杂
用 domdocument::loadhtml 载入 html
析出各个元素的属性
计算每个盒子的尺寸和位置 这个比较复杂,需对 css 很熟悉
逐一绘制
这个是什么意思?
css,我自认还行,你说的用那个可以做到?还是什么?
反正那个我测试了不行
不满意可以改,不想改就自己写
只要对 css 很熟悉的话,做起来并不复杂
用 domdocument::loadhtml 载入 html
析出各个元素的属性
计算每个盒子的尺寸和位置 这个比较复杂,需对 css 很熟悉
逐一绘制
主要是生成图片以后就没有了那么多样式了
自己繪製只能繪製一個大概而已,並不能做到完美,看來只能另闢蹊徑藉助瀏覽器的內核了.
不满意可以改,不想改就自己写
只要对 css 很熟悉的话,做起来并不复杂
用 domdocument::loadhtml 载入 html
析出各个元素的属性
计算每个盒子的尺寸和位置 这个比较复杂,需对 css 很熟悉
逐一绘制
http://www.tqcp.net/kong_bct.php
你看他这个是如何做到的,他这个就是动态生成图片的哦,格式还很漂亮,究竟php怎么做到的?
那是固定格式,用gd很容易做到
那是固定格式,用gd很容易做到
这个怎么实现呢?
我测试过多次都不行的,都是有瑕疵的
给你个示例代码
