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


Posted in Python onMay 20, 2015

本文实例讲述了Python使用reportlab将目录下所有的文本文件打印成pdf的方法。分享给大家供大家参考。具体实现方法如下:

# -*- coding: utf8 -*- 
#~ #---------------------------------------------------------------------- 
import wlab #pip install wlab 
import reportlab.pdfbase.ttfonts 
#reportlab.pdfbase.pdfmetrics.registerFont(reportlab.pdfbase.ttfonts.TTFont('song', '/usr/share/fonts/cn/msjh.ttf')) 
#import reportlab.lib.fonts 
# 
from reportlab.pdfgen import canvas 
from reportlab.lib.units import inch 
# 
def file2pdf(FileName): 
  fpi=FileName.find('.') 
  if (fpi>0): 
    outputfn=FileName[0:fpi]+'.pdf' 
  else: 
    outputfn=FileName+'.pdf' 
  c = canvas.Canvas(outputfn) 
  #c.setFont('song',10) 
  textobject = c.beginText() 
  textobject.setTextOrigin(inch,11*inch) 
  file=open(FileName) 
  n=0 
  for line in file: 
    n=n+1 
    if(n<10): 
      nstr='0'+str(n) 
    else: 
      nstr=str(n) 
    line=nstr+': '+line.replace('  ','  ') 
    textobject.textLine(line.rstrip()) 
  c.drawText(textobject) 
  c.showPage() 
  c.save() 
# 
FileList=wlab.GetFileList('.',FlagStr=['.txt']) 
# 
for FileName in FileList: 
  file2pdf(FileName)

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python创建日历实例
Aug 21 Python
对Python3.6 IDLE常用快捷键介绍
Jul 16 Python
python如何发布自已pip项目的方法步骤
Oct 09 Python
python3对接mysql数据库实例详解
Apr 30 Python
Python 正则表达式爬虫使用案例解析
Sep 23 Python
Python 余弦相似度与皮尔逊相关系数 计算实例
Dec 23 Python
jupyter notebook 多行输出实例
Apr 09 Python
python3.6.5基于kerberos认证的hive和hdfs连接调用方式
Jun 06 Python
Python调用高德API实现批量地址转经纬度并写入表格的功能
Jan 12 Python
Django利用AJAX技术实现博文实时搜索
May 06 Python
详解python网络进程
Jun 15 Python
python数字类型和占位符详情
Mar 13 Python
Python使用matplotlib绘制动画的方法
May 20 #Python
Python中subprocess模块用法实例详解
May 20 #Python
python检测某个变量是否有定义的方法
May 20 #Python
Python实现在matplotlib中两个坐标轴之间画一条直线光标的方法
May 20 #Python
python使用PyGame模块播放声音的方法
May 20 #Python
python实现带声音的摩斯码翻译实现方法
May 20 #Python
python定时检查某个进程是否已经关闭的方法
May 20 #Python
You might like
php更新mysql后获取改变行数的方法
2014/12/25 PHP
dvwa+xampp搭建显示乱码的问题及解决方案
2015/08/23 PHP
PHP实现补齐关闭的HTML标签
2016/03/22 PHP
PHP+Mysql+Ajax实现淘宝客服或阿里旺旺聊天功能(前台页面)
2017/06/16 PHP
PHP 实现 WebSocket 协议原理与应用详解
2020/04/22 PHP
js prototype截取字符串函数
2010/04/01 Javascript
JQueryEasyUI Layout布局框架的使用
2013/04/08 Javascript
js replace 与replaceall实例用法详解
2013/08/03 Javascript
js 控制图片大小核心讲解
2013/10/09 Javascript
jQuery实现MSN中文网滑动Tab菜单效果代码
2015/09/09 Javascript
SublimeText自带格式化代码功能之reindent
2015/12/27 Javascript
浅析JS原型继承与类的继承
2016/04/07 Javascript
gulp-htmlmin压缩html的gulp插件实例代码
2016/06/06 Javascript
js方法数据验证的简单实例
2016/09/17 Javascript
教你用十行node.js代码读取docx的文本
2017/03/08 Javascript
js判断用户是输入的地址请求的路径(实例讲解)
2017/07/18 Javascript
jquery radio 动态控制选中失效问题的解决方法
2018/02/28 jQuery
node中的session的具体使用
2018/09/14 Javascript
Vue编程式跳转的实例代码详解
2019/07/10 Javascript
vue Treeselect 树形下拉框:获取选中节点的ids和lables操作
2020/08/15 Javascript
关于vue 项目中浏览器跨域的配置问题
2020/11/10 Javascript
[05:17]DOTA2誓师:今天我们在这里 明天TI4等我!
2014/03/26 DOTA
[00:20]DOTA2荣耀之路7:-ah fu-抢盾
2018/05/31 DOTA
python基础_文件操作实现全文或单行替换的方法
2017/09/04 Python
如何在python中使用selenium的示例
2017/12/26 Python
Python类的继承用法示例
2019/01/31 Python
Django项目使用CircleCI的方法示例
2019/07/14 Python
详解pyqt5的UI中嵌入matplotlib图形并实时刷新(挖坑和填坑)
2020/08/07 Python
浅谈HTML5 defer和async的区别
2016/06/07 HTML / CSS
运动服饰每月订阅盒:Ellie
2018/04/29 全球购物
俄罗斯披萨、寿司和面食送货到家服务:2 Берега
2019/12/15 全球购物
英国在线定制百叶窗网站:Swift Direct Blinds
2020/02/25 全球购物
国际贸易毕业生求职信范文
2014/02/21 职场文书
会计求职自荐信
2014/06/20 职场文书
公司员工违纪检讨书
2015/05/05 职场文书
2015年惩防体系建设工作总结
2015/05/22 职场文书