Python3操作pdf文件之ReportLab第1篇--解决中文乱码问题
一说到pdf文件,大家应该都很熟悉吧,特别是那些经常在网上搜索某本书pdf版的人。别装了,那些人当中应该就有你吧?--开玩笑的,知道你是一向只买正版纸质版的人。
买正版纸质的人?好像扯远了。好吧,言归正传,咱说一下Python3处理pdf相关的内容。
Python3处理pdf的第3库挺多的,当然,处理其它文件的库也多。这次咱就说下耳熟能详、久经战场并被最、最、最被看好的ReportLab。
1
若要想要获得ReportLab的支持,得先安装它的开发包。打开【终端】,输入那句,闭着眼,都会输错的命令:pip3 install reportlab 。稍等一会会,就能安装完了,究竟多长时间,你可以用手机记一下时间,如果实在闲得无聊的话。
2
安装好开发包后,咱就来写写如何生成pdf文件并送给经常下载它同类的你。来,打开你喜欢的开发工具,输入以下代码。
from reportlab.pdfgen import canvas
def write_pdf():
c = canvas.Canvas("demo1.pdf")
# 注意,这里用英文,不是因为我英文好,而是默认不支持中文
c.drawString(200, 500, "Hello PDF")
# 不信默认不支持中文,咱走着瞧
c.drawString(200, 550, "你好,PDF文件")
c.showPage()
c.save()
write_pdf()
3
见到上面的中文乱码,整个心情都不好了,倘若不解决,以后就不用混Python圈了。若要想ReportLab支持中文,可以去下载SimSun.ttf字体,并把它放在/ python3.7/site-packages/reportlab/fonts文件夹下,至于Python的安装路径得按你的实际情况来。当然,中文字体并非一定要用SimSun的,只是这个可以支持,我就用它来说明而已。
from reportlab.pdfgen.canvas import Canvas
from reportlab.pdfbase import pdfmetrics
from reportlab.pdfbase.ttfonts import TTFont
def write_pdf():
# 注册字体
pdfmetrics.registerFont(TTFont("SimSun", "SimSun.ttf"))
c = Canvas("demo1.pdf")
# 应用注册的字体
c.setFont("SimSun", 14)
c.drawString(200, 550, "自从PDF支持中文以后,整个人都变了")
c.save()
write_pdf()
Python3操作pdf文件之ReportLab第1篇--解决中文乱码问题相关推荐
- php 操作word模板,phpword替换模板内容和解决中文乱码
本篇文章给大家分享的内容是phpword替换模板内容和解决中文乱码的问题,有需要的朋友可以看一下. 好吧 先下载吧: 下载地址:https://pan.baidu.com/s/1upup2rpLTVX ...
- python3 如何读中文路径_Python3操作pdf文件之ReportLab
一说到pdf文件,大家应该都很熟悉吧,特别是那些经常在网上搜索某本书pdf版的人.别装了,那些人当中应该就有你吧?--开玩笑的,知道你是一向只买正版纸质版的人. 买正版纸质的人?好像扯远了.好吧,言归 ...
- java zip ant 密码_java对 zip文件的压缩和解压(ant解决中文乱码)
/***@name 解压zip格式压缩包 *@description 相关说明 *@paramsourceZip 源文件 *@paramdestDir 目标文件地址 *@throwsException ...
- Python使操作PDF文件变得有趣
大家好 我是毕加锁 (锁!) 大家在平时操作PDF文件时是不是感觉很枯燥 那么今天就教大家利用Python让操作PDF文件变得有趣起来 目录 工具 从PDF中提取文本 旋转和叠加页面 加密P ...
- 第19天---python办公自动化---操作PDF文件
第19天-python办公自动化-操作PDF文件 在Python中,可以使用名为PyPDF2的三方库来读取PDF文件,可以使用下面的命令来安装它. pip install PyPDF2 读取PDF并抽 ...
- day10 Python操作pdf文件
目录 一.PyPDF2的使用 1. pypdf2的使用 2. pypdf2的基本应用 3. 为PDF文件页面添加水印 二.reportlab的使用 0. 导入工具 1. 创建画布 2. 添加文字 3. ...
- itex将html转成pdf加水印,itext操作PDF文件添加水印
功能描述:添加图片和文字水印 /** * * [功能描述:添加图片和文字水印] [功能详细描述:功能详细描述] * @param srcFile 待加水印文件 * @param destFile 加水 ...
- 使用ITEXT操作PDF文件
2019独角兽企业重金招聘Python工程师标准>>> 使用ITEXT操作PDF文件 pom.xml <dependency><groupId>com.ite ...
- bfo java_Java操作PDF文件(BFO) | 学步园
上一次我们用iText这个工具在Java环境下操作PDF文件,现在我们换一个工具:BFO iText的确小巧,但是功能也有限制,只能简单的生成PDF文件,BFO却不同,能设置字体.版面等元素. 最新版 ...
最新文章
- 机房收费系统之uml图——初版
- 关闭tomact被占用的进程
- 7-27 御膳房 (5 分)
- 【渝粤教育】国家开放大学2019年春季 0134-22T劳动法学 参考试题
- 中山大学校队选拔赛第二试题试题3【Compressed suffix array】-------2015年2月8日
- java model 封装_Java封装统一的Result Model案例
- LeetCode141-环形链表(Linked List Cycle)-Rust语言实现
- js 单精度浮点数转10进制_js浮点数精度问题的前世今生?
- chrome disable-web-security 关闭安全策略 解决跨域
- Android FFmpeg集成
- 计算机打字速成,计算机汉字输入五笔字型打字速成.pdf
- 如何高效搜索公众号文章(r11笔记第35天)
- 大班运用计算机教学案例,【大班教学案例】_幼儿园大班教学案例:《让孩子在自主探索中获取成功》...
- Python OpenCV 图像缩放 cv2.resize 方法
- 桌面的文件突然不见了怎么恢复
- 阿里Java岗P5-P7成长笔记【3283页PDF文档免费领】
- 声明对象和实例化对象的区别
- 软件构造(九) 面向复用的软件构造技术
- OpenAI的GPT-2:用Python构建世界上最先进的文本生成器的简单指南
- Exercise 35: 分支和函数
热门文章
- 开发在线文档时,这个技术难点你解决了吗?
- Single-Domain Generalized Object Detection in Urban Scene via Cyclic-Disentangled Self-Distill阅读笔记
- 基于统计学习---面向新闻的发生地与提及地检测
- 自主性: 一个概念的哲学考察
- Eclipse中格式化JS、HTML代码
- 串之Ukkonen、Rabin_karp算法
- 史玉柱和郭广昌谈创业团队管理:两种类型的“孔雀王”
- 土壤基因组dna提取试剂盒
- Python---元祖、循环
- 火焰图(FlameGraph)的使用