Python reportlab库之Graphics
ReportLab Graphics是 ReportLab库的子包。它起初是一个独立的程序,但是现在它被集成到ReportLab 工具集中了。Graphics 允许您使用强大到表格和图像属性来提高PDF文件的表格和报告的表达能力。
Drawings 和 Renderers
Drawing是对一组shapes的独立描述,它不受系统和平台的影响,独立于PDF。
一个Drawing包含许多的基础形状,例如矩形、圆形、线等。Group是一种特殊的形状(逻辑上的形状)。在Graphics世界里,几乎任何东西都可以通过少量基础形状进行构建。
Graphics包还提供了多种类型的Renderers,每一个Renderer都是服务于一种特殊类型文件格式。例如PDF (renderPDF), Postscript (renderPS), and bitmap output (renderPM)。
坐标系统
在PDF中坐标系默认是bottom up(自地向上的,从左下开始),下面我们看个小demo
hello world sample
from reportlab.lib import colors
from reportlab.graphics.shapes import *
d = Drawing(400, 200)
d.add(Rect(50, 50, 300, 100, fillColor=colors.yellow))
d.add(String(150,100, 'Hello World', fontSize=18, fillColor=colors.red))
d.add(String(180,86, 'Special 123!@#',
fillColor=colors.red))
from reportlab.graphics import renderPDF
renderPDF.drawToFile(d, 'example1.pdf', 'My First Drawing')
效果图
hello world
网友评论