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的curses库使用教程
Apr 11 Python
python中split方法用法分析
Apr 17 Python
使用PyV8在Python爬虫中执行js代码
Feb 16 Python
Python列表list操作符实例分析【标准类型操作符、切片、连接字符、列表解析、重复操作等】
Jul 24 Python
python批量设置多个Excel文件页眉页脚的脚本
Mar 14 Python
浅谈django orm 优化
Aug 18 Python
在python中安装basemap的教程
Sep 20 Python
python mysql断开重连的实现方法
Jul 26 Python
Python操作Sonqube API获取检测结果并打印过程解析
Nov 27 Python
python opencv实现简易画图板
Aug 27 Python
简述python四种分词工具,盘点哪个更好用?
Apr 13 Python
Python时间操作之pytz模块使用详解
Jun 14 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
?生?D片??C字串
2006/12/06 PHP
PHP 配置open_basedir 让各虚拟站点独立运行
2009/11/12 PHP
PHP使用mysql与mysqli连接Mysql数据库用法示例
2016/07/07 PHP
php使用Jpgraph创建折线图效果示例
2017/02/15 PHP
PHP使用PDO实现mysql防注入功能详解
2019/12/20 PHP
一些常用的JS功能函数代码
2009/06/23 Javascript
JavaScript 异步调用框架 (Part 2 - 用例设计)
2009/08/03 Javascript
用jquery实现下拉菜单效果的代码
2010/07/25 Javascript
JavaScript中继承的一些示例方法与属性参考
2010/08/07 Javascript
jquery时间下拉框小例子
2013/04/15 Javascript
javascript loadScript异步加载脚本示例讲解
2013/11/14 Javascript
IE下Ajax缓存问题的快速解决方法(get方式)
2014/01/09 Javascript
jQuery实现鼠标经过提示信息的地图热点效果
2015/04/26 Javascript
jQuery模拟Marquee实现无缝滚动效果完整实例
2016/09/29 Javascript
深入理解JS中的Function.prototype.bind()方法
2016/10/11 Javascript
JavaScript prototype属性详解
2016/10/25 Javascript
使用jquery判断一个元素是否含有一个指定的类(class)实例
2017/02/12 Javascript
vue mint-ui 实现省市区街道4级联动示例(仿淘宝京东收货地址4级联动)
2017/10/16 Javascript
vue中$set的使用(结合在实际应用中遇到的坑)
2018/07/10 Javascript
微信小程序API—获取定位的详解
2019/04/30 Javascript
Vue 401配合Vuex防止多次弹框的案例
2020/11/11 Javascript
[03:39]DOTA2英雄梦之声_第05期_幽鬼
2014/06/23 DOTA
[47:04]EG vs RNG 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
判断python对象是否可调用的三种方式及其区别详解
2019/01/31 Python
Python Unittest原理及基本使用方法
2020/11/06 Python
Python数据模型与Python对象模型的相关总结
2021/01/26 Python
英国一家专门出售品牌鞋子的网站:Allsole
2016/08/07 全球购物
雅萌 (YA-MAN) :日本美容家电领域的龙头企业
2017/05/12 全球购物
介绍一下linux的文件权限
2014/07/20 面试题
SOA面试题:如何在SOA中实现松耦合
2013/07/21 面试题
授权委托书样本
2014/04/03 职场文书
外贸业务员求职信
2014/06/16 职场文书
思想品德评语大全
2014/12/31 职场文书
2015年度员工自我评价范文
2015/03/11 职场文书
《葡萄沟》教学反思
2016/02/23 职场文书
“爱眼护眼,提前预防近视”倡议书3篇
2019/10/30 职场文书