python将html转成PDF的实现代码(包含中文)


Posted in Python onMarch 04, 2013

前提:

安装xhtml2pdf https://pypi.python.org/pypi/xhtml2pdf/
下载字体:微软雅黑;给个地址:https://3water.com/fonts/8481.html

待转换的文件:1.htm

<meta charset="utf8"/>
<style type='text/css'>
@font-face { 
        font-family: "code2000"; 
        src: url("code2000.ttf") 
} 
html { 
     font-family: code2000; 
} 
</style>
<html>
<body><table>
<tr>
<td>文字</td>
<td>123</td>
</tr>
<tr>
<td>图片</td>
<td><img src="1.jpg"></td>
</tr>
</table></body></html>

html_to_pdf.py程序

# -*- coding: utf-8 -*- 
import sx.pisa3 as pisa 
data= open('1.htm').read()
result = file('test.pdf', 'wb') 
pdf = pisa.CreatePDF(data, result) 
result.close() 
pisa.startViewer('test.pdf')

说明:xhtml2pdf不能识别汉字,需要在html文件中通过CSS的方式嵌入code2000字体,貌似只能用code2000,原因不明。

Python 相关文章推荐
python 判断自定义对象类型
Mar 21 Python
python中将阿拉伯数字转换成中文的实现代码
May 19 Python
对Python新手编程过程中如何规避一些常见问题的建议
Apr 01 Python
对于Python中线程问题的简单讲解
Apr 03 Python
为Python程序添加图形化界面的教程
Apr 29 Python
python实现杨辉三角思路
Jul 14 Python
一行代码让 Python 的运行速度提高100倍
Oct 08 Python
Python中logging.NullHandler 的使用教程
Nov 29 Python
python实现随机加减法生成器
Feb 24 Python
Python 常用日期处理 -- calendar 与 dateutil 模块的使用
Sep 02 Python
python代码实现图书管理系统
Nov 30 Python
Python趣味挑战之用pygame实现简单的金币旋转效果
May 31 Python
python发送邮件的实例代码(支持html、图片、附件)
Mar 04 #Python
python用ConfigObj读写配置文件的实现代码
Mar 04 #Python
Python编码时应该注意的几个情况
Mar 04 #Python
python中定义结构体的方法
Mar 04 #Python
Python语言技巧之三元运算符使用介绍
Mar 04 #Python
python解决字典中的值是列表问题的方法
Mar 04 #Python
python实现的各种排序算法代码
Mar 04 #Python
You might like
php 更新数据库中断的解决方法
2009/06/05 PHP
PHP获取163、gmail、126等邮箱联系人地址【已测试2009.10.10】
2009/10/11 PHP
win7计划任务定时执行PHP脚本设置图解
2014/05/09 PHP
利用php获得flv视频长度的实例代码
2017/10/26 PHP
php判断数组是否为空的实例方法
2020/05/10 PHP
让iframe框架网页在任何浏览器下自动伸缩
2006/08/18 Javascript
jquery特效 幻灯片效果示例代码
2013/07/16 Javascript
JS操作iframe里的dom(实例讲解)
2014/01/29 Javascript
NodeJS学习笔记之(Url,QueryString,Path)模块
2015/01/13 NodeJs
jquery中EasyUI使用技巧小结
2015/02/10 Javascript
让JavaScript中setTimeout支持链式操作的方法
2015/06/19 Javascript
基于bootstrap3和jquery的分页插件
2015/07/31 Javascript
基于JavaScript实现仿京东图片轮播效果
2015/11/06 Javascript
基于JavaScript的操作系统你听说过吗?
2016/01/28 Javascript
12条写出高质量JS代码的方法
2018/01/07 Javascript
react组件从搭建脚手架到在npm发布的步骤实现
2019/01/09 Javascript
Vue中使用canvas方法总结
2019/02/12 Javascript
JS removeAttribute()方法实现删除元素的某个属性
2021/01/11 Javascript
[13:39]2014 DOTA2华西杯精英邀请赛 5 25 NewBee VS DK第一场
2014/05/26 DOTA
[36:43]NB vs Optic 2018国际邀请赛小组赛BO1 B组加赛 8.19
2018/08/21 DOTA
pandas 读取各种格式文件的方法
2018/06/22 Python
浅谈Python traceback的优雅处理
2018/08/31 Python
python实现石头剪刀布程序
2021/01/20 Python
PyQt5固定窗口大小的方法
2019/06/18 Python
Python全局锁中如何合理运用多线程(多进程)
2019/11/06 Python
Python读取YAML文件过程详解
2019/12/30 Python
Django数据库操作之save与update的使用
2020/04/01 Python
物业客服专员岗位职责
2013/11/30 职场文书
财务管理职业生涯规划书
2014/02/26 职场文书
小学五年级班主任工作经验交流材料
2015/11/02 职场文书
python 模块重载的五种方法
2021/04/24 Python
在vue中import()语法不能传入变量的问题及解决
2022/04/01 Vue.js
mysql 乱码 字符集latin1转UTF8
2022/04/19 MySQL
openstack云计算keystone组件工作介绍
2022/04/20 Servers
python基础之//、/与%的区别详解
2022/06/10 Python
nginx之queue的具体使用
2022/06/28 Servers