Open Source Python PDF anotační knihovna
Vyzkoušejte tuto Free & Open Source Python knihovnu pro přidávání a extrahování anotací z dokumentů PDF.
Co je pypdf?
Pypdf je bezplatná a open-source python knihovna známá pro svou rozmanitou sadu funkcí pro práci s dokumenty PDF v prostředí pythonu. Tento nástroj se hodí pro různé manipulace s PDF, ale v této recenzi se zaměříme na jeho funkce související s poznámkami.
Mezi pozoruhodné funkce pypdf související s anotacemi patří:
- Přidání poznámek tvarů: Můžeme kreslit tvary, jako jsou čáry, obdélníky, elipsy a mnohoúhelníky atd. na konkrétní oblasti stránek PDF jako poznámky.
- Přidávání textových anotací: Na konkrétní pozice stránek PDF můžeme přidat textové anotace.
- Přidávání anotací k odkazu: Do dokumentů PDF je také možné přidávat anotace odkazů (jako hypertextový odkaz).
- Extrahování anotací: Můžeme iterovat a extrahovat informace o všech anotacích v dokumentu PDF pomocí knihovny pypdf.
Začínáme s pypdf
K instalaci a používání pypdf potřebujete Python verze 3.6.0 nebo vyšší. Nejprve tedy nainstalujte Python a poté pomocí níže uvedených příkazů nainstalujte pypdf do svého počítače pomocí pip a virtuální prostředí.
Linux
python3 -m venv venv
source venv/bin/activate
pip install pypdf
MacOS
python -m venv venv
source venv/bin/activate
pip install pypdf
Windows
python3 -m venv venv
venv\Scripts\activate.bat
pip install pypdf
Přidat obdélníkovou anotaci do PDF
Pomocí knihovny pypdf můžeme k dokumentům PDF přidat obdélníkové anotace. K definici obdélníku použijeme třídu Rectangle modulu pypdf.annotations z knihovny pypdf. Potom použijeme metodu add_annotations třídy PDFWriter k přidání obdélníkové anotace do PDF.
Podrobnosti naleznete ve fragmentu kódu níže:
Výstup
Na níže uvedeném snímku obrazovky můžete vidět, že k anotaci slova Open Source je přidán obdélník:
Přidejte textovou anotaci do PDF
Textové anotace vytváříme pomocí třídy Text z modulu pypdf.annotations knihovny pypdf. Poté můžeme použít metodu add_annotations třídy PDFWriter z knihovny pypdf k přidání anotace do PDF. Textová anotace je přidána jako ikona, která se rozbalí a zobrazí text, když na ikonu klepnete. Podrobnosti naleznete ve fragmentu kódu níže:
Výstup
Jak můžeme vidět na níže uvedeném screencastu, výše uvedený kód přidá ikonu do PDF na zadanou pozici, která po kliknutí na ikonu zobrazí textovou anotaci:
Přidat anotaci odkazu do PDF
Anotace odkazů se vytvářejí pomocí třídy Link z modulu pypdf.annotations. Problém s anotací odkazu je však v tom, že pouze přidá odkaz, ale není viditelný. Abychom tento problém vyřešili, začleníme obdélník pomocí třídy Rectangle z modulu pypdf.annotations, jak jsme vysvětlili dříve. Tímto způsobem může uživatel vizuálně identifikovat umístění, kam je přidána anotace odkazu. Pro lepší pochopení zkontrolujte níže uvedený fragment kódu:
Výstup
Jak můžeme vidět na výstupu, obdélník slouží jako plocha, která po kliknutí uživatele přesměruje na zadaný odkaz.
Extrahujte anotace z PDF
Můžeme extrahovat anotace z PDF pomocí knihovny pypdf. Iterujeme všechny anotace na stránkách PDF a poté použijeme metodu get_object k získání objektu anotace. Poté z objektu extrahujeme relevantní informace. Podrobnosti naleznete ve fragmentu kódu níže:
Výstup
Jak můžeme vidět na níže uvedeném snímku obrazovky, program vrátil typ anotace a souřadnice anotací v dokumentu PDF:
Závěr
Pypdf umožňuje vývojářům Pythonu přidávat do PDF různé typy anotací a přistupovat k základním informacím o anotacích, jako je jejich typ a umístění, což z něj činí praktickou volbu pro úkoly vyžadující přidávání anotací a extrahování dat o anotacích.