کتابخانه حاشیه نویسی PDF منبع باز Python
این کتابخانه رایگان و منبع باز پایتون را برای افزودن و استخراج حاشیه نویسی از اسناد PDF امتحان کنید.
pypdf چیست؟
Pypdf یک کتابخانه رایگان و منبع باز پایتون است که به دلیل مجموعه ای از ویژگی های متنوع برای مدیریت اسناد PDF در محیط پایتون شناخته شده است. این ابزار برای دستکاری های مختلف PDF مفید است، اما ما در این بررسی بر روی ویژگی های مربوط به حاشیه نویسی آن تمرکز خواهیم کرد.
ویژگی های قابل توجه pypdf مربوط به حاشیه نویسی عبارتند از:
- افزودن حاشیهنویسی شکل: میتوانیم اشکالی مانند خطوط، مستطیل، بیضیها و چندضلعیها و غیره را در قسمتهای خاصی از صفحات PDF به عنوان حاشیهنویسی رسم کنیم.
- افزودن حاشیه نویسی متن: می توانیم حاشیه نویسی متنی را به موقعیت های خاصی از صفحات PDF اضافه کنیم.
- افزودن حاشیهنویسی پیوند: همچنین میتوان حاشیهنویسی پیوند (مانند یک ابرپیوند) را به اسناد PDF اضافه کرد.
- استخراج حاشیه نویسی: می توانیم با استفاده از کتابخانه pypdf اطلاعات مربوط به تمام حاشیه نویسی ها را در یک سند PDF تکرار و استخراج کنیم.
شروع کار با pypdf
برای نصب و استفاده از pypdf به نسخه 3.6.0 یا بالاتر پایتون نیاز دارید. بنابراین، ابتدا Python را نصب کنید و سپس از دستورات زیر برای نصب pypdf بر روی دستگاه خود با استفاده از pip و محیط مجازی.
لینوکس
python3 -m venv venv
source venv/bin/activate
pip install pypdf
سیستم عامل مک
python -m venv venv
source venv/bin/activate
pip install pypdf
پنجره ها
python3 -m venv venv
venv\Scripts\activate.bat
pip install pypdf
اضافه کردن Rectangle Annotation به PDF
ما می توانیم با استفاده از کتابخانه pypdf حاشیه نویسی مستطیل را به اسناد PDF اضافه کنیم. ما از کلاس Rectangle ماژول pypdf.annotations از کتابخانه pypdf برای تعریف مستطیل استفاده خواهیم کرد. سپس از روش add_annotations کلاس PDFWriter برای اضافه کردن حاشیهنویسی مستطیل به PDF استفاده میکنیم.
برای جزئیات، قطعه کد زیر را بررسی کنید:
خروجی
در تصویر زیر، می توانید ببینید که مستطیل برای حاشیه نویسی کلمه منبع باز اضافه شده است:
اضافه کردن حاشیه نویسی متن به PDF
ما حاشیه نویسی های متنی را با استفاده از کلاس Text از ماژول pypdf.annotations کتابخانه pypdf ایجاد می کنیم. پس از آن میتوانیم از روش add_annotations کلاس PDFWriter از کتابخانه pypdf برای اضافه کردن حاشیهنویسی به PDF استفاده کنیم. حاشیه نویسی متن به عنوان یک نماد اضافه می شود که وقتی روی نماد کلیک می شود، متن را بزرگ می کند و نشان می دهد. برای جزئیات، قطعه کد زیر را بررسی کنید:
خروجی
همانطور که در تصویر زیر می بینیم، کد بالا یک نماد به PDF در موقعیت مشخص شده اضافه می کند که هنگام کلیک روی نماد، حاشیه نویسی متن را نشان می دهد:
اضافه کردن حاشیه نویسی لینک به PDF
حاشیه نویسی پیوند با استفاده از کلاس Link از ماژول pypdf.annotations ایجاد می شود. با این حال، مشکل حاشیه نویسی پیوند این است که فقط پیوند را اضافه می کند اما قابل مشاهده نیست. برای پرداختن به این مشکل، همانطور که قبلا توضیح دادیم، یک مستطیل را با استفاده از کلاس Rectangle از ماژول pypdf.annotations ترکیب می کنیم. به این ترتیب کاربر می تواند به صورت بصری مکانی را که حاشیه نویسی لینک اضافه شده است شناسایی کند. برای درک بهتر، قطعه کد زیر را بررسی کنید:
خروجی
همانطور که در خروجی می بینیم، مستطیل به عنوان ناحیه ای عمل می کند که با کلیک کردن، کاربر را به لینک مشخص شده هدایت می کند.
استخراج حاشیه نویسی از PDF
ما می توانیم حاشیه نویسی را از یک PDF با استفاده از کتابخانه pypdf استخراج کنیم. همه حاشیهنویسیها را در صفحات PDF تکرار میکنیم و سپس از روش get_object برای دریافت شیء حاشیهنویسی استفاده میکنیم. سپس اطلاعات مربوطه را از شی استخراج می کنیم. برای جزئیات، قطعه کد زیر را بررسی کنید:
خروجی
همانطور که در تصویر زیر می بینیم، برنامه نوع حاشیه نویسی و مختصات حاشیه نویسی را در سند PDF برگردانده است:
نتیجه
Pypdf به توسعه دهندگان پایتون اجازه می دهد تا انواع مختلف حاشیه نویسی را به فایل های PDF اضافه کنند و به اطلاعات ضروری در مورد حاشیه نویسی ها، مانند نوع و مکان آنها دسترسی داشته باشند، و آن را به یک انتخاب عملی برای کارهایی که نیاز به اضافه کردن حاشیه نویسی و استخراج داده ها در مورد حاشیه نویسی دارند، تبدیل می کند.