发布于 2015-11-19 11:54:29 | 201 次阅读 | 评论: 0 | 来源: 网友投递
Python编程语言
Python 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。
本文实例讲述了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)