Python 在PDF中绘制线条、矩形、椭圆形
在PDF中绘制图形可以增强文档的视觉效果。通过添加不同类型的形状,如实线、虚线、矩形、圆形等,可以使文档更加生动有趣,提高读者的阅读兴趣。这对于制作报告、演示文稿或是教材特别有用。本文将通过以下几个示例介绍如何
使用Python 在PDF中绘制不同的图形
。
- Python 在PDF中绘制实线、虚线
- Python 在PDF中绘制矩形
- Python 在 PDF 中绘制椭圆形
所需Python库
-
Spire.PDF for Python
。可以通过下面的pip 命令直接安装:
pip install Spire.Pdf
Python 在PDF中绘制实线、虚线
Spire.PDF for Python库提供了
PdfPageBase.Canvas.DrawLine()
方法用于在PDF页面指定位置绘制线条。通过设置画笔PdfPen的样式,可以绘制实线或虚线。
Python 代码:
from spire.pdf.common import * from spire.pdf import * #创建PDF文档 pdf =PdfDocument()#添加页面 page =pdf.Pages.Add()#保存当前绘图状态 state =page.Canvas.Save()#指定线条起始点的X和Y坐标 x = 100.0y= 50.0 #制定线条长度 width = 300.0 #创建指定颜色和粗细的画笔 pen = PdfPen(PdfRGBColor(Color.get_Blue()), 2.0)#用画笔在页面上绘制实线 page.Canvas.DrawLine(pen, x, y, x +width, y)#设置画笔样式为虚线 pen.DashStyle =PdfDashStyle.Dash#设置虚线样式为[1, 4, 1] pen.DashPattern = [1, 4, 1]#指定虚线起始点 y 坐标 y = 80.0 #用画笔页面上绘制虚线 page.Canvas.DrawLine(pen, x, y, x +width, y)#恢复之前保存的绘图状态 page.Canvas.Restore(state)#保存PDF文档 pdf.SaveToFile("绘制线条.pdf")
pdf.Close()
pdf.Dispose()
Python 在PDF中
绘制矩形
PdfPageBase.Canvas.DrawRectangle()
方法可用于在PDF页面指定位置绘制矩形。通过向该方法中传递不同的参数,可以指定矩形的大小、填充色等。
Python 代码:
from spire.pdf.common import * from spire.pdf import * #创建PDF文档 pdf =PdfDocument()#添加页面 page =pdf.Pages.Add()#保存当前绘图状态 state =page.Canvas.Save()#创建指定颜色和粗细的画笔 pen = PdfPen(PdfRGBColor(Color.get_Blue()), 1.5)#用画笔在页面上绘制一个矩形 page.Canvas.DrawRectangle(pen, RectangleF(PointF(20.0, 60.0), SizeF(150.0, 90.0)))#创建一个线性渐变笔刷 linearGradientBrush = PdfLinearGradientBrush(PointF(220.0, 60.0), PointF(350.0, 180.0), PdfRGBColor(Color.get_Green()), PdfRGBColor(Color.get_Pink()))#用线性渐变笔刷绘制一个填充式矩形 page.Canvas.DrawRectangle (linearGradientBrush, RectangleF(PointF(220.0, 60.0), SizeF(150.0, 90.0)))#恢复之前保存的绘图状态 page.Canvas.Restore(state)#保存PDF文档 pdf.SaveToFile("绘制矩形.pdf")
pdf.Close()
pdf.Dispose()
Python 在 PDF 中绘制椭圆形
在PDF页面指定位置绘制椭圆形可以使用
PdfPageBase.Canvas.DrawEllipse
()
方法。通过指定不同的PDF画笔或画刷,可以绘制不同样式的椭圆形。
Python 代码:
from spire.pdf.common import * from spire.pdf import * #创建PDF文档 pdf =PdfDocument()#添加页面 page =pdf.Pages.Add()#保存当前绘图状态 state =page.Canvas.Save()#创建画笔 pen =PdfPens.get_Violet()#用画笔在页面上绘制椭圆形 page.Canvas.DrawEllipse(pen, 30.0, 60.0, 150.0, 100.0)#创建填充画刷对象 brush =PdfSolidBrush(PdfRGBColor(Color.get_Violet()))#绘制填充的椭圆形状 page.Canvas.DrawEllipse(brush, 220.0, 60.0, 150.0, 100.0)#恢复之前保存的绘图状态 page.Canvas.Restore(state)#保存PDF文档 pdf.SaveToFile("绘制椭圆形.pdf")
pdf.Close()
pdf.Dispose()
生成文档中的红色水印,可以通过点击以下链接,申请一个月免费授权来去除: