操作PDF文件時,複製其中的指定頁面可以幫助我們從PDF檔案中提取特定資訊,如文字、圖表或資料等,以便在其他文件中使用。複製PDF頁面也可以實現在不同檔案中提取頁面,以建立一個新的綜合文件。本文將介紹如何使用Python 在同一文件中複製PDF頁面,或者複製頁面到另一PDF文件中。
所需Python庫 - Spire.PDF for Python。可以透過下面的pip命令直接安裝:
pip install Spire.Pdf
Python 在同一PDF 文件中複製頁面
Spire.PDF for Python庫支援在文件中新增新頁面,然後將指定頁面的內容繪製到新頁面來實現複製PDF頁面。操作如下:
- 使用 LoadFromFile() 方法載入PDF文件;
- 獲取文件中指定頁面,然後使用 CreateTemplate() 方法基於頁面內容建立模板;
- 透過 Insert() 方法在指定索引處插入空白新頁面 (也可以使用 Add() 方法直接在文件末尾新增新頁面);
- 使用 PdfPageBase.Canvas.DrawTemplate() 方法將模板繪製到新頁面上;
- 使用 SaveToFile() 方法儲存PDF文件。
from spire.pdf.common import * from spire.pdf import * # 載入PDF文件 pdf = PdfDocument() pdf.LoadFromFile("實驗.pdf") # 獲取第一頁 page = pdf.Pages[0] # 基於該頁面建立模板 template = page.CreateTemplate() # 插入一個新頁面到第二位置處 page = pdf.Pages.Insert(1, page.Size, PdfMargins(0.0)) # 將模板繪製到新頁面上 page.Canvas.DrawTemplate(template, PointF(0.0, 0.0)) # 儲存PDF pdf.SaveToFile("複製PDF頁面.pdf"); pdf.Close()
Python在不同PDF 文件之間複製頁面
也可以將指定頁面從一個PDF文件複製到另一個PDF文件中,具體操作如下:
- 使用 LoadFromFile() 方法載入兩個PDF文件;
- 獲取文件1中指定頁面,然後使用 CreateTemplate() 方法基於頁面內容建立模板;
- 透過 Insert() 方法在文件2中指定索引處插入空白新頁面;
- 使用 PdfPageBase.Canvas.DrawTemplate() 方法將模板繪製到新頁面上;
- 使用 SaveToFile() 方法儲存結果文件
from spire.pdf.common import * from spire.pdf import * # 載入文件1 pdf1 = PdfDocument() pdf1.LoadFromFile("實驗.pdf") # 載入文件2 pdf2 = PdfDocument() pdf2.LoadFromFile("南極洲.pdf") # 獲取文件1中的第一頁 page = pdf1.Pages[0] # 基於該頁面內容建立模板 template = page.CreateTemplate() # 在文件2指定位置處插入空白新頁面 newPage = pdf2.Pages.Insert(0, page.Size, PdfMargins(0.0)) # 將模板繪製到新頁面上 newPage.Canvas.DrawTemplate(template, PointF(0.0, 0.0)) # 儲存PDF pdf2.SaveToFile("複製頁面到另一PDF.pdf") pdf2.Close()
生成文件中的紅色水印,可以透過點選以下連結,申請一個月免費授權來去除:
https://www.e-iceblue.cn/misc/temporary-license.html