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

 更新时间:2013年03月04日 23:47:45   作者:  
python将html转成PDF的实现代码,需要用到xhtml2pdf和微软雅黑字体,需要的朋友可以参考下

前提:

安装xhtml2pdf https://pypi.python.org/pypi/xhtml2pdf/
下载字体:微软雅黑;给个地址:https://www.jb51.net/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,原因不明。

相关文章

  • jenkins配置python脚本定时任务过程图解

    jenkins配置python脚本定时任务过程图解

    这篇文章主要介绍了jekins配置python脚本定时任务过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • python爬虫模块URL管理器模块用法解析

    python爬虫模块URL管理器模块用法解析

    这篇文章主要介绍了python爬虫模块URL管理器模块用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • Python绘制雷达图时遇到的坑的解决

    Python绘制雷达图时遇到的坑的解决

    这篇文章主要介绍了Python绘制雷达图时遇到的坑的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • Python和php通信乱码问题解决方法

    Python和php通信乱码问题解决方法

    Python是在windows下的客户端,用的是cp936编码,php用的是utf-8编码,如果单纯使用urllib.urlencode编码之后post发送的话,php接收过来的中文会是类似\xb0\xe1这种形式的编码
    2014-04-04
  • Python解析最简单的验证码

    Python解析最简单的验证码

    最近在学python,正好遇到学校需要选宿舍,就用python写了一个抢宿舍的软件。下面通过本文给大家介绍python解析最简单的验证码,对python解析验证码相关知识感兴趣的朋友一起学习吧
    2016-01-01
  • windows下安装Python的XlsxWriter模块方法

    windows下安装Python的XlsxWriter模块方法

    今天小编就为大家分享一篇windows下安装Python的XlsxWriter模块方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • Pytest运行及其控制台输出信息

    Pytest运行及其控制台输出信息

    这篇文章主要介绍了Pytest运行及其控制台输出信息,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-09-09
  • 用 Python 定义 Schema 并生成 Parquet 文件详情

    用 Python 定义 Schema 并生成 Parquet 文件详情

    本文将演示两个例子,一个是没有层级的两个字段,另一个是含于嵌套级别的字段,将要使用到的 Python 模块有 pandas 和 pyarrow,感兴趣是我小伙伴请和小编一起学习下面文章内容吧
    2021-09-09
  • python使用参数对嵌套字典进行取值的方法

    python使用参数对嵌套字典进行取值的方法

    这篇文章主要介绍了python使用参数对嵌套字典进行取值,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-04-04
  • Python中内置数据类型list,tuple,dict,set的区别和用法

    Python中内置数据类型list,tuple,dict,set的区别和用法

    这篇文章主要给大家介绍了Python中内置数据类型list,tuple,dict,set的区别和用法,都是非常基础的知识,十分的细致全面,有需要的小伙伴可以参考下。
    2015-12-12

最新评论