頁碼是許多類型文件中的重要內容,它能方便讀者在文檔中的導航。在創建PDF文檔時,添加頁碼對于組織和引用內容特別有用。在本文中,我們將探討如何利用Python程序高效地插入頁碼到PDF文檔中,簡化工作流程并創建出精美、結構合理的PDF文檔。
文章目錄
- 用Python插入頁碼到PDF文檔的頁腳
本文所使用的方法需要用到Spire.PDF for Python,可從官網下載或通過PyPI安裝:pip install Spire.PDF
。
用Python插入頁碼到PDF文檔的頁腳
Spire.PDF for Python中的 PdfPageBase.Canvas.DrawString() 方法可以在PDF文檔的任意位置繪制自定義的頁碼。以下是將頁碼插入PDF文檔頁腳的步驟:
- 創建 PdfDocument 類的對象。
- 使用 PdfDocument.LoadFromFile() 方法加載一個PDF文檔。
- 通過 PdfDocument.PageSettings.Margins 屬性獲取文檔的頁邊距(用于計算頁碼的位置)。
- 遍歷文檔中的每一頁來繪制頁碼。
- 使用 PdfDocument.Pages.get_Item() 方法獲取一頁。
- 創建 PdfTrueTypeFont 類和 PdfStringFormat 類的對象,并設置頁碼的文本格式和對齊方式。
- 計算位置并設置頁碼的樣式。
- 使用 PdfPageBase.Canvas.DrawString() 方法在頁面上繪制頁碼。
- 使用 PdfDocument.SaveToFile() 方法保存文檔。
代碼示例:
Python
from spire.pdf.common import *
from spire.pdf import *# 創建PdfDocument類的對象
doc = PdfDocument()# 加載PDF文檔
doc.LoadFromFile("示例.pdf")# 獲取文檔的頁邊距
margin = doc.PageSettings.Margins# 遍歷文檔中的頁面
startNumber = 1
for i in range(doc.Pages.Count):# 獲取頁面page = doc.Pages.get_Item(i)# 為頁碼創建字體和字符串格式font = PdfTrueTypeFont("HarmonyOS Sans SC", 12.0, PdfFontStyle.Regular, True)format = PdfStringFormat(PdfTextAlignment.Center)# 創建畫刷brush = PdfBrushes.get_DarkGray()# 計算繪制頁碼的位置,使其位于頁腳中央space = font.Heightx = margin.Leftwidth = page.Canvas.ClientSize.Width - margin.Left - margin.Righty = page.Canvas.ClientSize.Height - margin.Bottom - space# 設置頁碼樣式numberLabel = "第 {0:d} 頁,共 {1:d} 頁".format(startNumber, doc.Pages.Count)startNumber += 1# 在頁面上繪制頁碼page.Canvas.DrawString(numberLabel, font, brush, x + width / 2, y, format)# 保存修改后的文檔
doc.SaveToFile("output/PDF頁碼.pdf")
doc.Close()
添加效果:
以上內容介紹了如何使用Spire.PDF for Python插入頁碼到PDF文檔中。此API還支持許多其他PDF操作,請前往Spire.PDF for Python教程查看更多信息。
申請臨時License:臨時License