چگونه می‌توان حاشیه‌نویسی به یک PDF افزود

چگونه یادداشت‌هایی به یک PDF اضافه کنیم

شما یادداشت‌های متنی را در یک PDF فایل اضافه می‌کنید تا محتوای نوشته شده در اسناد را خلاصه کرده و نقاط بحرانی و جزئیات دیگر را یادداشت کنید. با این حال، می‌توانید یادداشت‌های متنی را در هر نقطه‌ای از سند اضافه کنید و پس از ایجاد، به عنوان یک پنجره بازشو و به عنوان یک نماد زمانی که بسته است، ظاهر می‌شود. در این پست وبلاگ، یاد خواهید گرفت که چگونه می‌توان یادداشت‌ها را به یک فایل PDF با استفاده از این API Java برای PDF اضافه کرد. علاوه بر این، شما با متدهایی آشنا خواهید شد که به شما کمک می‌کند تا یادداشت‌های متنی را به صورت برنامه‌نویسی در یک فایل اضافه کنید.

نکات زیر در این راهنما پوشش داده خواهد شد:

Java API برای PDF - نصب

روش نصب این کتابخانه تنها یک گام فاصله دارد. شما می‌توانید download API را دریافت کنید یا با استفاده از تنظیمات Maven زیر آن را نصب کنید.

 <repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <classifier>jdk17</classifier>
</dependency>

چگونه یادداشت‌های توضیحی به یک PDF اضافه کنیم

اکنون، می‌توانید از روش‌های این کتابخانه PDF برای پیاده‌سازی افزودن حاشیه‌نویسی متنی به یک فایل PDF به صورت برنامه‌نویسی استفاده کنید.

لطفاً کد قطعه و مراحل ذکر شده در زیر را دنبال کنید:

  1. یک نمونه از کلاس Document را ایجاد کنید و فایل PDF منبع را بارگذاری کنید.
  2. صفحه‌ای را با استفاده از فراخوانی روش getItem به‌دست‌آورید.
  3. یک شی از کلاس Rectangle که نمایانگر یک مستطیل است، مقداردهی اولیه کنید.
  4. یک حاشیه نویسی متنی جدید بر روی صفحه مشخص شده با ایجاد یک شیء از کلاس TextAnnotation ایجاد کنید.
  5. setTitle متد متنی را تنظیم می‌کند که باید در نوار عنوان حاشیه‌نویسی نمایش داده شود.
  6. روش setSubject متنی را تنظیم می کند که نمایانگر توصیف شیء است.
  7. setContents متد متن الحاقیه را تعیین می‌کند.
  8. شیئی Border را با شیء textAnnotation اولیه سازی کنید.
  9. عرض مرز و الگوی خط چین را با فراخوانی setWidth و setDash تنظیم کنید.
  10. Invoke the add method that adds an annotation to the collection.
  11. save متد فایل الحاقیه را ذخیره خواهد کرد.

کپی و پیست کنید کد زیر را در فایل اصلی خود:

// یک نمونه از کلاس Document را ایجاد کنید و فایل PDF منبع را بارگذاری کنید.
Document document = new Document(  "table.pdf");
// با استناد به روش getItem یک صفحه را براساس ایندکس دریافت کنید 
Page page = document.getPages().get_Item(1);
// یک شی از کلاس Rectangle که نمایانگر مستطیل است را ایجاد کنید.
Rectangle rect = new Rectangle(200, 750, 400, 790);
// یک Annotation متن جدید در صفحه مشخص شده با ساختن یک شی از کلاس TextAnnotation ایجاد کنید. 
TextAnnotation textAnnotation = new TextAnnotation(page, rect);
// متد setTitle متنی را تنظیم می‌کند که باید در نوار عنوان حاشیۀ یادداشت نمایش داده شود. 
textAnnotation.setTitle("Aspose User");
// setSubject method متن را برای توصیف شیء تعیین می‌کند. 
textAnnotation.setSubject("Sample Subject");
// setContents method متن یادداشت را تنظیم می کند. 
textAnnotation.setContents("Sample contents for the annotation");
textAnnotation.setOpen(true);
textAnnotation.setIcon(TextIcon.Circle);
// کلاس سازنده را برای شیء مرز با شیء textAnnotation ایجاد کنید. 
Border border = new Border(textAnnotation);
// عرض مرز و الگوی خط چین را با فراخوانی متدهای setWidth و setDash تنظیم کنید.  
border.setWidth(5);
border.setDash(new Dash(1, 1));
textAnnotation.setBorder(border);
textAnnotation.setRect(rect);
// متد add را فراخوانی کنید که حاشیه‌نگاری را به مجموعه اضافه می‌کند. 
page.getAnnotations().add(textAnnotation);
// روش save فایل حاشیه‌نویسی را ذخیره خواهد کرد. 
document.save(  "sample_textannot.pdf");

شما می‌توانید خروجی را در تصویر زیر مشاهده کنید:

text-annotation

متن یادداشت‌ها را بخوانید

به همین ترتیب، می‌توانیم یادداشت‌های متنی را از یک فایل PDF موجود با دنبال کردن مراحل ذکر شده در زیر بخوانیم:

  1. یک نمونه از کلاس Document ایجاد کنید و فایل PDF منبع را بارگذاری کنید.
  2. متد getItem را برای دریافت یک صفحه بر اساس اندیس فراخوانی کنید.
  3. فیلتر کردن یادداشت‌ها با استفاده از AnnotationSelector.
  4. Invoke the accept method to accept visitor to process annotation.
  5. Call the getSelected method to get the list of selected Annotation objects.
  6. نتایج را چاپ کنید.

کد زیر را در فایل اصلی خود کپی و پیست کنید:

// یک نمونه از کلاس Document ایجاد کنید و فایل PDF منبع را بارگذاری کنید. 
Document document = new Document(  "sample_textannot.pdf");
// راهنمایی کنید که برای دریافت یک صفحه با اندیس، متد getItem را با فراخوانی استفاده کنید.   
Page page = document.getPages().get_Item(1);
// فیلتر annotations با استفاده از AnnotationSelector 
AnnotationSelector annotationSelector = new AnnotationSelector(
        new TextAnnotation(page, Rectangle.getTrivial()));
// متد accept را برای قبول بازدیدکننده به منظور پردازش حاشیه‌نگاری فراخوانی کنید. 
page.accept(annotationSelector);
//  متد getSelected را برای دریافت لیست اشیای Annotation انتخاب شده فراخوانی کنید. 
List<Annotation> TextAnnotations = annotationSelector.getSelected();
// print the results
for (Annotation fa : TextAnnotations) {
    System.out.println(fa.getRect());
}

حذف توضیحات متنی

علاوه بر این، می‌توانید مراحل و تکه کد را برای حذف الحاقات متنی به صورت برنامه‌نویسی دنبال کنید:

  1. یک شیء از کلاس Document ایجاد کنید و فایل PDF منبع را بارگذاری کنید.
  2. فیلتر کردن یادداشت‌ها با استفاده از AnnotationSelector.
  3. پذیرفتن بازدیدکننده برای پردازش حاشیه‌نویسی با فراخوانی متد accept.
  4. متد getSelected را فراخوانی کنید تا فهرست اشیاء Annotation انتخاب شده را بگیرید.
  5. از تمام یادداشت‌های متنی عبور کنید و با فراخوانی متد delete یادداشت‌ها را حذف کنید.
  6. Invoke the save method to save the file.

کپی و پیست کنید کد زیر را در فایل اصلی خود:

// یک شی از کلاس Document ایجاد کنید و فایل PDF منبع را بارگذاری کنید. 
Document document = new Document(  "sample_textannot.pdf");
// فیلتر کردن یادداشت‌ها با استفاده از AnnotationSelector 
Page page = document.getPages().get_Item(1);
AnnotationSelector annotationSelector = new AnnotationSelector(
        new TextAnnotation(page, Rectangle.getTrivial()));
// بازدیدکنندگان را برای پردازش نشانه‌گذاری با فراخوانی متد accept قبول می‌کند 
page.accept(annotationSelector);
// متد getSelected را برای دریافت لیست اشیاء Annotation انتخاب شده فراخوانی کنید. 
List<Annotation> TextAnnotations = annotationSelector.getSelected();
// همه حاشیه‌نویسی‌های متنی را مرور کنید
for (Annotation fa : TextAnnotations) {
    // حذف یادداشت با فراخوانی متد حذف 
}
// متد ذخیره را برای ذخیره فایل فراخوانی کنید 
document.save( "sample_textannot_del.pdf");

Get a Free License

شما می‌توانید از یک مجوز موقت رایگان برای آزمایش API بدون محدودیت‌های ارزیابی استفاده کنید.

جمع بندی

این ما را به پایان این پست وبلاگ می‌برد. شما مراحل افزودن حاشیه‌نویسی‌ها در یک فایل PDF به طور برنامه‌نویسی را گذرانده‌اید. علاوه بر این، شما همچنین آموخته‌اید که چگونه حاشیه‌نویسی‌های متنی را از اسناد PDF موجود با استفاده از این API Java برای PDF بخوانید و حذف کنید. همچنین می‌توانید به documentation برای کاوش بیشتر در روش‌های API مراجعه کنید.

علاوه بر این، ما پیشنهاد می‌کنیم که شما راهنمای Getting Started guide ما را دنبال کنید.

نهایتاً، conholdate.com در حال نوشتن پست‌های وبلاگ جدید است. بنابراین، لطفاً برای دریافت به‌روزرسانی‌های منظم در تماس باشید.

پرسشی بپرسید

شما می‌توانید سوالات یا پرسش‌های خود را در forum به ما اطلاع دهید.

سوالات متداول

آیا می‌توانم پی‌دی‌اف را به‌صورت رایگان حاشیه‌نویسی کنم؟

لطفاً به این link مراجعه کنید تا کد نمونه و روش‌های API ارائه شده توسط Java API برای PDF را مشاهده کنید.

همچنین ببینید