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

前提:

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

时间: 2024-09-25 16:51:08

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

python使用reportlab实现图片转换成pdf的方法

  本文实例讲述了python使用reportlab实现图片转换成pdf的方法.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 #!/usr/bin/env python import os import sys from reportlab.lib.pagesizes import A4, landscape from reportlab.pdfgen import canvas f = sys.argv[1]

Python使用reportlab将目录下所有的文本文件打印成pdf的方法

  本文实例讲述了Python使用reportlab将目录下所有的文本文件打印成pdf的方法.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 # -*- coding: utf8 -*- #~ #------------------------------------------------

Python爬虫:把廖雪峰的教程转换成PDF电子书

写爬虫似乎没有比用 Python 更合适了,Python 社区提供的爬虫工具多得让你眼花缭乱,各种拿来就可以直接用的 library 分分钟就可以写出一个爬虫出来,今天就琢磨着写一个爬虫,将廖雪峰的 Python 教程 爬下来做成 PDF 电子书方便大家离线阅读. 开始写爬虫前,我们先来分析一下该网站1的页面结构,网页的左侧是教程的目录大纲,每个 URL 对应到右边的一篇文章,右侧上方是文章的标题,中间是文章的正文部分,正文内容是我们关心的重点,我们要爬的数据就是所有网页的正文部分,下方是用户的

Python中使用PyQt把网页转换成PDF操作代码实例_python

代码很简单,功能也很简单 =w= webpage2pdf #!/usr/bin/env python3 import sys try: from PyQt4 import QtWebKit from PyQt4.QtCore import QUrl from PyQt4.QtGui import QApplication, QPrinter except ImportError: from PySide import QtWebKit from PySide.QtCore import QUrl

Python实现批量把SVG格式转成png、pdf格式的代码分享_python

需要提前安装cairosvg模块,下载地址http://cairosvg.org/download/ Code: #! encoding:UTF-8 import cairosvg import os   loop = True while loop:     svgDir = raw_input("请输入SVG文件目录")     if os.path.exists(svgDir) and os.path.isdir(svgDir):         loop = False    

wkhtmltopdf:一个Linux中将网页转成PDF的智能工具

wkhtmltopdf 是一个开源.简单而有效的命令行 shell 程序,它可以将任何 HTML (网页)转换为 PDF 文档或图像(jpg.png 等). wkhtmltopdf 是用 C++ 编写的,并在 GNU/GPL (通用公共许可证)下发布.它使用 WebKit 渲染引擎将 HTML 页面转换为 PDF 文档且不会丢失页面的质量.这是一个用于实时创建和存储网页快照的非常有用且可信赖的解决方案. wkhtmltopdf 的功能 开源并且跨平台. 使用 WebKit 引擎将任意 HTML

wkhtmltopdf:一个 Linux 中将网页转成 PDF 的智能工具

wkhtmltopdf 是一个开源.简单而有效的命令行 shell 程序,它可以将任何 HTML (网页)转换为 PDF 文档或图像(jpg.png 等). wkhtmltopdf 是用 C++ 编写的,并在 GNU/GPL (通用公共许可证)下发布.它使用 WebKit 渲染引擎将 HTML 页面转换为 PDF 文档且不会丢失页面的质量.这是一个用于实时创建和存储网页快照的非常有用且可信赖的解决方案. wkhtmltopdf 的功能 开源并且跨平台. 使用 WebKit 引擎将任意 HTML

MathType转换成pdf符号丢失或乱码怎么办

  MathType转换成pdf符号丢失或乱码怎么办?这个问题的出现主要还字体的问题,电脑字体无法识别MathType字体所以在转换的时候会出现这个上问题. 具体解决方法如下: 1.打开电脑,按照MathType的安装路径找到其安装目录,这个由于每个人的安装路径不一样,所以操作会有所差别,在MathType的安装目录下找到MathType里面的True Type文件,将里面字体复制. 复制MathType里面的True Type字体文件 2.然后回到C:\Windows\Fonts中直接将之粘贴

WORD转换成PDF后如何减少PDF文件的大小

WORD转换成PDF后发现pdf挺大的,为了不改变pdf内容,且尽量不改变质量,使用Adobe Acrobat的"另存为"功能,可能减少PDF的大小,这是个非常实用的技巧,可以避免我们的PDF文档过大,为文档"瘦身". "减少文件大小"命令可以重新取样和压缩图像.删除嵌入的 14 款基本字体和将所剩嵌入字体嵌入子集字体.它也可以压缩文档结构和整理元素,如无效的书签.如果文件大小已经足够小,则本命令不会起作用. 方法和步骤 1.打开一个 PDF,或