ReportLab教程:在长方形内显示文字 | Python PDF绘图
在ReportLab中画出一个长方形并在长方形内显示文字,可以按照以下步骤进行:\n\n1. 导入需要的模块:\npython\nfrom reportlab.lib.pagesizes import letter\nfrom reportlab.pdfgen import canvas\n\n\n2. 创建一个PDF画布并指定页面大小:\npython\nc = canvas.Canvas("rectangle.pdf", pagesize=letter)\n\n\n3. 定义长方形的位置和尺寸:\npython\nx = 100\ny = 100\nwidth = 200\nheight = 100\n\n\n4. 在画布上绘制长方形:\npython\nc.rect(x, y, width, height)\n\n\n5. 定义要显示的文字:\npython\ntext = "This is a rectangle"\n\n\n6. 计算文字的位置:\npython\ntext_x = x + (width - c.stringWidth(text)) / 2\ntext_y = y + (height - c._leading - c._fontsize) / 2\n\n\n7. 在长方形内显示文字:\npython\nc.drawString(text_x, text_y, text)\n\n\n8. 保存并关闭PDF文件:\npython\nc.save()\n\n\n完整的代码如下:\npython\nfrom reportlab.lib.pagesizes import letter\nfrom reportlab.pdfgen import canvas\n\nc = canvas.Canvas("rectangle.pdf", pagesize=letter)\n\nx = 100\ny = 100\nwidth = 200\nheight = 100\n\nc.rect(x, y, width, height)\n\ntext = "This is a rectangle"\n\ntext_x = x + (width - c.stringWidth(text)) / 2\ntext_y = y + (height - c._leading - c._fontsize) / 2\n\nc.drawString(text_x, text_y, text)\n\nc.save()\n\n\n运行代码后,将生成一个名为"rectangle.pdf"的PDF文件,其中包含一个带有文字的长方形。
原文地址: https://www.cveoy.top/t/topic/pZet 著作权归作者所有。请勿转载和采集!