sudo apt-get build-dep libqt4-gui libqt4-network libqt4-webkit sudo apt-get install openssl build-essential xorg git-core git-doc libssl-dev sudo apt-get install wkhtmltopdf
这样安装的版本较低,可以安装之后在
http://code.google.com/p/wkhtmltopdf/downloads/list
下载新的版本,覆盖到 /usr/local/bin/wkhtmltopdf 以使用最新版本。
基本命令
wkhtmltopdf http://zhangzhe.heroku.com/ zhangzhe.pdf
会在本地生成 pdf 文件,但是样式并不是我想要的。
经过测试,我使用的配置为:
wkhtmltopdf http://localhost:81/blog_groups zz.pdf -b -B 0mm -L 0mm -R 0mm -T 5mm --toc-l1-font-size 14
-b 代表打印样式为书本的基本模式;
-B 0mm -L 0mm -R 0mm -T 5mm 表示除了博客上边距为5mm,其他页边距都是0mm;
--toc-l1-font-size 14 表示目录的字体为14。
我的 blog 使用上述命令生成的 pdf 没有样式,但为其他网站都可以生成正确的 pdf。google,发现问题出现在
stylesheet_link_tag "style"这一句上。默认的参数会生成
<link href="/stylesheets/style.css" media="screen" rel="stylesheet" type="text/css" />
的 html代码,参数 media="screen" 代表是在电脑屏幕显示,因此打印出的 pdf 没有样式。
解决方案是使用
stylesheet_link_tag "style", :media => "all"
以生成可打印的网页。
wicked-pdf 把 wkhtmltopdf 集成到 rails 使用起来十分方便。 更多细节见 http://mileszs.com/blog/2009/06/17/wicked-pdf-plugin.html。
我的 blog 目前放置在 heroku 上,但似乎不能在 heroku 服务器上面安装 wkhtmltopdf。所以现在我的使用方式是在本机通过 wkhtmltopdf 生成 pdf 文件,再上传到 heroku 服务器。希望以后能找到更好的方式。
第一个 pdf 地址见 :
http://s3.amazonaws.com/recordings.idapted.com/pdfs/1/zzhangsblog_2009.pdf
Comments (0)
Add Comment