Python實現(xiàn)在PDF中繪制形狀
在PDF中繪制圖形可以增強文檔的視覺效果。通過添加不同類型的形狀,如實線、虛線、矩形、圓形等,可以使文檔更加生動有趣,提高讀者的閱讀興趣。這對于制作報告、演示文稿或是教材特別有用。本文將通過以下幾個示例介紹如何使用Python 在PDF中繪制不同的圖形。
所需Python庫 - Spire.PDF for Python。可以通過下面的pip 命令直接安裝:
pip install Spire.Pdf
Python 在PDF中繪制實線、虛線
Spire.PDF for Python庫提供了 PdfPageBase.Canvas.DrawLine() 方法用于在PDF頁面指定位置繪制線條。通過設(shè)置畫筆PdfPen的樣式,可以繪制實線或虛線。
Python 代碼:
from spire.pdf.common import *
from spire.pdf import *
# 創(chuàng)建PDF文檔
pdf = PdfDocument()
# 添加頁面
page = pdf.Pages.Add()
# 保存當前繪圖狀態(tài)
state = page.Canvas.Save()
# 指定線條起始點的X和Y坐標
x = 100.0
y = 50.0
# 制定線條長度
width = 300.0
# 創(chuàng)建指定顏色和粗細的畫筆
pen = PdfPen(PdfRGBColor(Color.get_Blue()), 2.0)
# 用畫筆在頁面上繪制實線
page.Canvas.DrawLine(pen, x, y, x + width, y)
# 設(shè)置畫筆樣式為虛線
pen.DashStyle = PdfDashStyle.Dash
# 設(shè)置虛線樣式為[1, 4, 1]
pen.DashPattern = [1, 4, 1]
# 指定虛線起始點 y 坐標
y = 80.0
# 用畫筆頁面上繪制虛線
page.Canvas.DrawLine(pen, x, y, x + width, y)
# 恢復(fù)之前保存的繪圖狀態(tài)
page.Canvas.Restore(state)
# 保存PDF文檔
pdf.SaveToFile("繪制線條.pdf")
pdf.Close()
pdf.Dispose()
Python 在PDF中繪制矩形
PdfPageBase.Canvas.DrawRectangle() 方法可用于在PDF頁面指定位置繪制矩形。通過向該方法中傳遞不同的參數(shù),可以指定矩形的大小、填充色等。
Python 代碼:
from spire.pdf.common import *
from spire.pdf import *
# 創(chuàng)建PDF文檔
pdf = PdfDocument()
# 添加頁面
page = pdf.Pages.Add()
# 保存當前繪圖狀態(tài)
state = page.Canvas.Save()
# 創(chuàng)建指定顏色和粗細的畫筆
pen = PdfPen(PdfRGBColor(Color.get_Blue()), 1.5)
# 用畫筆在頁面上繪制一個矩形
page.Canvas.DrawRectangle(pen, RectangleF(PointF(20.0, 60.0), SizeF(150.0, 90.0)))
# 創(chuàng)建一個線性漸變筆刷
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)))
# 恢復(fù)之前保存的繪圖狀態(tài)
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 *
# 創(chuàng)建PDF文檔
pdf = PdfDocument()
# 添加頁面
page = pdf.Pages.Add()
# 保存當前繪圖狀態(tài)
state = page.Canvas.Save()
# 創(chuàng)建畫筆
pen = PdfPens.get_Violet()
# 用畫筆在頁面上繪制橢圓形
page.Canvas.DrawEllipse(pen, 30.0, 60.0, 150.0, 100.0)
# 創(chuàng)建填充畫刷對象
brush = PdfSolidBrush(PdfRGBColor(Color.get_Violet()))
# 繪制填充的橢圓形狀
page.Canvas.DrawEllipse(brush, 220.0, 60.0, 150.0, 100.0)
# 恢復(fù)之前保存的繪圖狀態(tài)
page.Canvas.Restore(state)
# 保存PDF文檔
pdf.SaveToFile("繪制橢圓形.pdf")
pdf.Close()
pdf.Dispose()
到此這篇關(guān)于Python實現(xiàn)在PDF中繪制形狀的文章就介紹到這了,更多相關(guān)Python PDF繪制形狀內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python 數(shù)據(jù)庫查詢返回list或tuple實例
這篇文章主要介紹了python 數(shù)據(jù)庫查詢返回list或tuple實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05
Python深度學習實戰(zhàn)PyQt5信號與槽的連接
本文講解信號與槽的連接機制,詳細示范各種類型的信號/槽連接的實現(xiàn)方法,這是圖形用戶界面的核心內(nèi)容。還將介紹面向?qū)ο蟮某绦蛟O(shè)計,這是圖形用戶界面的基本思想2021-10-10

