Python生成pdf文件的方法


Posted in Python onAugust 04, 2014

本文实例演示了Python生成pdf文件的方法,是比较实用的功能,主要包含2个文件。具体实现方法如下:

pdf.py文件如下:

#!/usr/bin/python
from reportlab.pdfgen import canvas
def hello():
    c = canvas.Canvas("helloworld.pdf")
    c.drawString(100,100,"Hello,World")
    c.showPage()
    c.save()
hello()

diskreport.py文件如下:

#!/usr/bin/env python
import subprocess
import datetime
from reportlab.pdfgen import canvas
from reportlab.lib.units import inch
def disk_report():
    p = subprocess.Popen("df -h", shell=True, stdout=subprocess.PIPE)
#   print p.stdout.readlines()
    return p.stdout.readlines()
def create_pdf(input, output="disk_report.pdf"):
    now = datetime.datetime.today()
    date = now.strftime("%h %d %Y %H:%M:%S")
    c = canvas.Canvas(output)
    textobject = c.beginText()
    textobject.setTextOrigin(inch, 11*inch)
    textobject.textLines('''Disk Capcity Report: %s''' %date)
    for line in input:
        textobject.textLine(line.strip())
    c.drawText(textobject)
    c.showPage()
    c.save()
report = disk_report()
create_pdf(report)

感兴趣的读者可以调试运行一下,对不足之处加以改进,以实现功能的最佳应用!

Python 相关文章推荐
Python程序设计入门(1)基本语法简介
Jun 13 Python
python使用range函数计算一组数和的方法
May 07 Python
Python实现Linux命令xxd -i功能
Mar 06 Python
利用Python实现Windows定时关机功能
Mar 21 Python
老生常谈python之鸭子类和多态
Jun 13 Python
PyCharm 常用快捷键和设置方法
Dec 20 Python
Python使用matplotlib实现的图像读取、切割裁剪功能示例
Apr 28 Python
TensorFlow2.1.0最新版本安装详细教程
Apr 08 Python
在Windows上安装和配置 Jupyter Lab 作为桌面级应用程序教程
Apr 22 Python
Pytorch学习之torch用法----比较操作(Comparison Ops)
Jun 28 Python
在CentOS7下安装Python3教程解析
Jul 09 Python
python list的index()和find()的实现
Nov 16 Python
Tornado Web服务器多进程启动的2个方法
Aug 04 #Python
Python通过解析网页实现看报程序的方法
Aug 04 #Python
基于Python实现的扫雷游戏实例代码
Aug 01 #Python
python脚本实现查找webshell的方法
Jul 31 #Python
用python删除java文件头上版权信息的方法
Jul 31 #Python
Python datetime时间格式化去掉前导0
Jul 31 #Python
python处理文本文件并生成指定格式的文件
Jul 31 #Python
You might like
CodeIgniter 完美解决URL含有中文字符串
2016/05/13 PHP
php实现的中秋博饼游戏之掷骰子并输出结果功能详解
2017/11/06 PHP
JavaScript聚焦于第一个字段的代码
2010/10/15 Javascript
使用滤镜设置透明导致 IE 6/7/8/9 解析异常的解决方法
2011/04/07 Javascript
html超链接打开窗口大小的方法
2013/03/05 Javascript
解析URI与URL之间的区别与联系
2013/11/22 Javascript
jQuery如何实现点击页面获得当前点击元素的id或其他信息
2014/01/09 Javascript
js中小数转换整数的方法
2014/01/26 Javascript
Javascript前端UI框架Kit使用指南之Kitjs简介
2014/11/28 Javascript
JS只能输入正整数的简单实例
2016/10/07 Javascript
详解JavaScript调用栈、尾递归和手动优化
2017/06/03 Javascript
如何在基于vue-cli的项目自定义打包环境
2018/11/10 Javascript
vue-cli项目使用mock数据的方法(借助express)
2019/04/15 Javascript
Vue中使用better-scroll实现轮播图组件
2020/03/07 Javascript
Python中if __name__ == "__main__"详细解释
2014/10/21 Python
在Python中使用M2Crypto模块实现AES加密的教程
2015/04/08 Python
使用Python下载歌词并嵌入歌曲文件中的实现代码
2015/11/13 Python
详解Python开发中如何使用Hook技巧
2017/11/01 Python
scrapy爬虫完整实例
2018/01/25 Python
python爬虫_实现校园网自动重连脚本的教程
2018/04/22 Python
python发送邮件脚本
2018/05/22 Python
Python面向对象基础入门之编码细节与注意事项
2018/12/11 Python
详解python算法之冒泡排序
2019/03/05 Python
python+opencv实现摄像头调用的方法
2019/06/22 Python
python单向循环链表原理与实现方法示例
2019/12/03 Python
Flask中sqlalchemy模块的实例用法
2020/08/02 Python
彼得罗夫美国官网:Peter Thomas Roth美国(青瓜面膜)
2017/11/05 全球购物
最耐用行李箱,一箱永流传:Briggs & Riley(全球终身保修)
2017/12/07 全球购物
爱奇艺VIP会员:大剧抢先看
2018/07/11 全球购物
英国领先的电视购物零售商:Ideal World
2019/03/18 全球购物
写出程序把一个链表中的接点顺序倒排
2014/04/28 面试题
酒店前厅员工辞职信
2014/01/08 职场文书
《生命的药方》教学反思
2014/04/08 职场文书
商业项目策划方案
2014/06/05 职场文书
幼儿园庆元旦主持词
2015/07/06 职场文书
队列队形口号
2015/12/25 职场文书