Nyílt forráskódú Python PDF Annotation Library
Próbálja ki ezt az ingyenes és nyílt forráskódú Python-könyvtárat megjegyzések hozzáadásához és PDF-dokumentumokból való kivonásához.
Mi az a pypdf?
A Pypdf egy ingyenes és nyílt forráskódú python-könyvtár, amely a PDF-dokumentumok python-környezetben történő kezelésére szolgáló sokféle funkciójáról ismert. Ez az eszköz hasznos lehet különféle PDF-manipulációkhoz, de ebben az áttekintésben a megjegyzésekkel kapcsolatos funkcióira fogunk összpontosítani.
A pypdf megjegyzésekkel kapcsolatos figyelemre méltó jellemzői a következők:
- Alakzatjegyzetek hozzáadása: A PDF-oldalak meghatározott területeire megjegyzésként rajzolhatunk alakzatokat, például vonalakat, téglalapokat, ellipsziseket és sokszögeket stb.
- Szöveges megjegyzések hozzáadása: A PDF-oldalak meghatározott helyeihez szöveges megjegyzéseket adhatunk.
- Hivatkozási megjegyzések hozzáadása: PDF-dokumentumokhoz hivatkozási megjegyzéseket (például hiperhivatkozást) is hozzáadhat.
- Annotációk kibontása: A pypdf-könyvtár segítségével megismételhetjük és kivonhatjuk az összes megjegyzést egy PDF-dokumentumban.
Ismerkedés a pypdf-vel
A pypdf telepítéséhez és használatához a Python 3.6.0-s vagy újabb verziója szükséges. Tehát először telepítse a Pythont, majd az alábbi parancsok segítségével telepítse a pypdf-et a gépére a pip és virtuális környezet a>.
Linux
python3 -m venv venv
source venv/bin/activate
pip install pypdf
Mac operációs rendszer
python -m venv venv
source venv/bin/activate
pip install pypdf
ablakok
python3 -m venv venv
venv\Scripts\activate.bat
pip install pypdf
Téglalap megjegyzés hozzáadása a PDF-hez
A pypdf könyvtár segítségével téglalap alakú megjegyzéseket adhatunk a PDF dokumentumokhoz. A téglalap meghatározásához a pypdf.annotations modul Rectangle osztályát fogjuk használni a pypdf könyvtárból. Ezután a PDFWriter osztály add_annotations metódusával téglalap alakú megjegyzést adunk a PDF-hez.
A részletekért ellenőrizze az alábbi kódrészletet:
Az alábbi képernyőképen láthatja, hogy a téglalap hozzáadva a nyílt forráskódú szó megjegyzéséhez:
Szöveges megjegyzés hozzáadása a PDF-hez
Szöveges kommentárokat készítünk a Szöveg osztály használatával a pypdf könyvtár pypdf.annotations moduljából. Ezt követően használhatjuk a PDFWriter osztály add_annotations metódusát a pypdf könyvtárból, hogy megjegyzést adjunk a PDF-hez. A szöveges megjegyzés ikonként kerül hozzáadásra, amely kibontja és megjeleníti a szöveget, amikor az ikonra kattintanak. A részletekért ellenőrizze az alábbi kódrészletet:
Amint az alábbi képernyőképen látható, a fenti kód egy ikont ad a PDF-hez a megadott helyen, amely szöveges megjegyzést jelenít meg az ikonra kattintva:
Hivatkozási megjegyzés hozzáadása a PDF-hez
A linkjegyzetek a Link osztály segítségével jönnek létre a pypdf.annotations modulból. A link megjegyzésével azonban az a probléma, hogy csak hozzáadja a hivatkozást, de nem látható. A probléma megoldása érdekében beépítünk egy téglalapot a Téglalap osztály segítségével a pypdf.annotations modulból, amint azt korábban kifejtettük. Így a felhasználó vizuálisan azonosíthatja azt a helyet, ahová a hivatkozás megjegyzését hozzáadta. A jobb megértés érdekében ellenőrizze az alábbi kódrészletet:
Ahogy a kimeneten is láthatjuk, a téglalap egy olyan területként szolgál, amelyre kattintva a megadott linkre irányítja át a felhasználót.
Annotációk kibontása PDF-ből
A megjegyzéseket PDF-ből kinyerhetjük ki a pypdf könyvtár segítségével. A PDF-oldalakon lévő összes kommentáron végigfutunk, majd a get_object metódust használjuk a kommentár objektum lekéréséhez. Ezután kivonjuk a releváns információkat az objektumból. A részletekért ellenőrizze az alábbi kódrészletet:
Amint az alábbi képernyőképen látható, a program visszaadta a megjegyzés típusát és a megjegyzések koordinátáit a PDF dokumentumban:
Következtetés
A Pypdf lehetővé teszi a Python fejlesztői számára, hogy különböző típusú megjegyzéseket adhassanak a PDF-ekhez, és hozzáférjenek a megjegyzésekkel kapcsolatos lényeges információkhoz, például azok típusához és helyéhez, így praktikus választássá válik a megjegyzések hozzáadását és a megjegyzésekkel kapcsolatos adatok kinyerését igénylő feladatokhoz.