一、PyMuPDF簡介
PyMuPDF 是 MuPDF 的 Python 介面,MuPDF 是一個輕量級的 PDF、XPS 和電子書查看器。MuPDF 支持多種文檔格式,如 PDF、XPS、OpenXPS、CBZ、EPUB 和 FictionBook 2。PyMuPDF 使用戶可以訪問擴展名為 ".pdf"、".xps"、".oxps"、".cbz"、".fb2" 或 ".epub" 的文件。此外,它還可以處理約10種流行的圖像格式,如 ".png"、".jpg"、".bmp"、".tiff" 等。
二、安裝
PyMuPDF 可以從源碼或 wheels 進行安裝。對於 Windows、linux 和 Mac OSX 平台,在 PyPI 的下載部分有 wheels。它支持 Python 3.6 到 3.9 的 64 位版本,Windows 版本也有 32 位版本。對於 Linux ARM 架構,查找 manylinux2014_aarch64 標簽。
除了標准庫外,PyMuPDF 沒有強制性的外部依賴項。安裝某些包時,需要 Pillow(用於 PixMap 的 pil_save() 和 pil_tobytes())和 fontTools(用於 Document.subset_fonts())。PyMuPDF-fonts 是一個不錯的字體選擇,用於文本輸出。使用 pip 安裝命令:pip install PyMuPDF。
三、使用方法
1. 導入庫,查看版本
2. 打開文檔
創建 Document 對象 doc,文件名必須是存在的 python 字元串。也可以從內存數據打開文檔或創建新的空 PDF。文檔還可以用作上下文管理器。
3. Document 方法和屬性
| 方法/屬性 | 描述 |
| ------ | ------ |
| Document.page_count | 頁數 (int) |
| Document.metadata | 元數據 (dict) |
| Document.get_toc() | 獲取目錄 (list) |
| Document.load_page() | 讀取頁面
示例:獲取元數據、目標大綱。
4. 頁面處理
頁面處理是 MuPDF 功能的核心。您可以將頁面呈現為光柵或矢量(SVG)圖像,選擇縮放、旋轉、移動或剪切頁面。您可以提取多種格式的頁面文本和圖像,並搜索文本字元串。對於 PDF 文檔,可以使用更多的方法向頁面添加文本或圖像。
創建頁面 Page,使用 Document 的方法。
頁面常用操作包括檢查鏈接、批註或表單欄位、呈現頁面、保存頁面圖像、提取文本和圖像、搜索文本。
5. PDF 操作
PDF 是唯一可以使用 PyMuPDF 修改的文檔類型。其他文件類型是只讀的。但是,您可以將任何文檔(包括圖像)轉換為 PDF,然後將所有 PyMuPDF 功能應用於轉換結果。通常,您可以選擇是保存到新文件,還是僅將修改附加到現有文件(「增量保存」),這通常要快得多。
操作 PDF 文檔包括修改、創建、重新排列和刪除頁面,連接和拆分 PDF 文檔,保存和關閉文檔。
2. 收藏!3個最佳學習Python編程的開源庫
1、learn-python3
這個存儲庫一共有19本Jupyter筆記本。它涵蓋了字元串和條件之類的基礎知識,然後討論了面向對象編程,以及如何處理異常和一些Python標准庫的特性等。每一個主題都有一個“notebook”鏈接,它會向你介紹該主題和一些示例代碼,當你完成這些內容之後,還有一個練習鏈接,點擊後你就可以做一些測試題。
項目地址:https://github.com/jerry-git/learn-python3
2、learn-python
這個存儲庫還可以作為Python的介紹,幫助你從初級水平上升至中級,這里的中級指的是熟練地使用這種編程語言,而不僅僅是簡單的循環和演算法。該存儲庫是一個Python腳本集合,每個腳本都是一個核心類別的子主題,比如“操作符”、“數據類型”和“控制流”。
你不必完整地學習該課程,正如作者指出的那樣,你還可以將存儲庫用作備忘單,在需要的時候,快速查找,查看文檔,查看代碼,然後運行測試,看代碼是否能正常運行,是否按照代碼准則編寫。
項目地址:https://github.com/trekhleb/learn-python/blob/master/src/control_flow/test_if.py
3、full-speed-python
該存儲庫快速介紹了字元串和列表等基礎知識,然後快速深入到更高級的主題,“類”和“非同步編程”等,作者在寫這本書時採用了一種實用的方法,用代碼示例簡要介紹了每個主題,然後直接跳到練習問題,讓讀者可以自己嘗試。你可以在項目詳情頁下載pdf/epub文件。
項目地址:https://github.com/joaoventura/full-speed-python
關於3個最佳學習Python編程的開源庫,青藤小編就和您分享到這里了。如果您對python編程有濃厚的興趣,希望這篇文章可以為您提供幫助。如果您還想了解更多關於python編程的技巧及素材等內容,可以點擊本站的其他文章進行學習。
3. 關於在linux系統中python第三庫的區分和查找
在 Linux 系統中,初學者常會遇到 Python 2 和 Python 3 的版本問題,這可能導致在安裝第三方庫時不知所措。本文將詳細解釋如何區分和查找 Python 庫的存放路徑,以便順利安裝所需庫。
在 Debian 和 Ubuntu 等基於 Debian 的 Linux 發行版中,Python 2 的庫通常位於以下目錄:
/home/pi/.local/lib/python2.7/site-packages
這是使用 pip 安裝的第三方庫的安裝路徑。同時,使用 apt-get install 命令安裝的低級第三方庫也可能存放在:
/usr/lib/python2.7/dist-packages
此目錄包含了標准庫和 apt-get 安裝的庫文件。在 Python 3 中,這些目錄對應如下:
/home/pi/.local/lib/python3.7/site-packages
使用 pip3 命令安裝的第三方庫存放於此。
/usr/lib/python3.7
這是 Python 3 自帶的標准庫目錄。
/usr/lib/python3/dist-packages
使用 apt-get install 命令安裝的庫文件存放於此。
對於 Python 3.7 的庫文件,有兩個主要存放路徑,分別是:
/home/pi/.local/lib/python3.7/site-packages
和
/usr/lib/python3/dist-packages
盡管都是存放第三方庫,但它們分別對應 pip 和 apt-get 安裝的庫,因此位於不同的目錄。
接下來,驗證兩個第三方庫:
首先安裝 pip3 工具,確保在安裝 Python 3 的庫時使用正確的命令。以下是安裝 SpeechRecognition 和 pyaudio 模塊的例子:
pip3 install -i pypi.tuna.tsinghua.e.cn... SpeechRecognition
pip3 install -i pypi.tuna.tsinghua.e.cn... pyaudio
安裝 SpeechRecognition 成功,但安裝 pyaudio 時出現錯誤,提示使用 sudo apt-get install python-pyaudio python3-pyaudio 來安裝。
確認 SpeechRecognition 庫已成功安裝在:
/home/pi/.local/lib/python3.7/site-packages
而 pyaudio 庫則位於:
/usr/lib/python3/dist-packages
兩個庫都存放於不同的路徑,這可能讓人困惑,但實際是基於安裝方式(pip 或 apt-get)區分的。
總結:查找 Python 第三方庫的位置時,需注意以下路徑:
對於 Python 2:
1. /home/pi/.local/lib/python2.7/site-packages (pip 安裝的庫)
2. /usr/lib/python2.7/dist-packages (apt-get 安裝的庫)
對於 Python 3:
1. /home/pi/.local/lib/python3.7/site-packages (pip 安裝的庫)
2. /usr/lib/python3/dist-packages (apt-get 安裝的庫)
若有疑問或發現錯誤,請分享您的經驗,以便共同進步。