วิธีทำเครื่องหมาย PDF ด้วย GroupDocs.Annotation สำหรับ Java

การเพิ่มความสามารถในการทำเครื่องหมายเอกสารให้กับแอปพลิเคชัน Java เป็นวิธีที่ทรงพลังในการปรับปรุงการทำงานร่วมกัน, การปฏิบัติตามกฎระเบียบ, และประสบการณ์ผู้ใช้ ในคู่มือนี้คุณจะได้เรียนรู้ วิธีทำเครื่องหมาย PDF ด้วย GroupDocs.Annotation สำหรับ Java ตั้งแต่การตั้งค่า Maven dependency ไปจนถึงการเพิ่มหลายเครื่องหมายและปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุดเกี่ยวกับการทำเครื่องหมาย เราจะเดินผ่านแต่ละขั้นตอนเพื่อให้คุณสามารถผสานรวมฟีเจอร์นี้เข้าสู่โครงการของคุณได้อย่างมั่นใจ

คำตอบด่วน

  • วัตถุประสงค์หลักของ GroupDocs.Annotation คืออะไร?
    เพื่อสร้าง, แก้ไข, และ บันทึก PDF ที่มีการทำเครื่องหมาย อย่างโปรแกรมในแอปพลิเคชัน Java.
  • ฉันต้องใช้ Maven artifact ใด?
    com.groupdocs:groupdocs-annotation (see the Maven dependency section).
  • ฉันสามารถเพิ่มเครื่องหมายมากกว่าหนึ่งรายการในครั้งเดียวได้หรือไม่?
    ได้ – คุณสามารถ เพิ่มหลายเครื่องหมาย ในการดำเนินการเดียว.
  • ฉันจะเริ่มต้น annotator อย่างไร?
    ใช้รูปแบบ initialize annotator ที่แสดงในบทแนะนำ.
  • เคล็ดลับที่สำคัญของแนวทางปฏิบัติที่ดีที่สุดคืออะไร?
    ปฏิบัติตามรายการตรวจสอบ annotation best practices เพื่อการจัดการหน่วยความจำและประสิทธิภาพ.

“วิธีทำเครื่องหมาย PDF” คืออะไร?

การทำเครื่องหมาย PDF หมายถึงการบันทึกโน้ตแบบภาพ—เช่น ไฮไลท์, ความคิดเห็น, รูปร่าง, และการทำเครื่องหมายอื่น ๆ—โดยตรงลงในไฟล์ เพื่อให้ผู้ที่เปิดเอกสารสามารถเห็นการเปลี่ยนแปลงได้ GroupDocs.Annotation มี API ที่ง่ายต่อการทำงานนี้โดยโปรแกรม

ทำไมต้องใช้ GroupDocs.Annotation สำหรับ Java?

  • การสนับสนุนข้ามแพลตฟอร์ม – ทำงานบนระบบปฏิบัติการใดก็ได้ที่รัน Java.
  • ประเภทเครื่องหมายที่หลากหลาย – ตั้งแต่ไฮไลท์ง่าย ๆ ไปจนถึงรูปร่างซับซ้อนเช่นวงรี.
  • ไม่ต้องใช้โปรแกรมแก้ไข PDF ภายนอก – ทุกการดำเนินการเกิดขึ้นภายในโค้ด Java ของคุณ.
  • ขยายได้สำหรับองค์กร – เหมาะสำหรับกระบวนการทำงานด้านกฎหมาย, การศึกษา, และเอกสารเทคนิค.

ข้อกำหนดเบื้องต้น

  • Java SDK (JDK 8 หรือใหม่กว่า) ที่ติดตั้งบนเครื่องของคุณ.
  • Maven สำหรับการจัดการ dependency.
  • IDE เช่น IntelliJ IDEA หรือ Eclipse.
  • ความรู้พื้นฐานการเขียนโปรแกรม Java.

การกำหนดค่า Maven Dependency ของ GroupDocs

เพิ่ม repository ของ GroupDocs และไลบรารี annotation ลงใน pom.xml ของคุณ:

<repositories>
   <repository>
      <id>repository.groupdocs.com</id>
      <name>GroupDocs Repository</name>
      <url>https://releases.groupdocs.com/annotation/java/</url>
   </repository>
</repositories>
<dependencies>
   <dependency>
      <groupId>com.groupdocs</groupId>
      <artifactId>groupdocs-annotation</artifactId>
      <version>25.2</version>
   </dependency>
</dependencies>

การรับใบอนุญาต

  1. Free Trial: ดาวน์โหลดเวอร์ชันทดลองเพื่อทดสอบ GroupDocs.Annotation.
  2. Temporary License: รับใบอนุญาตชั่วคราวเพื่อเข้าถึงเต็มรูปแบบในช่วงการประเมิน.
  3. Purchase: ซื้อใบอนุญาตเต็มเพื่อการใช้งานในผลิตภัณฑ์.

การเริ่มต้น Annotator ใน Java

ขั้นตอนแรกคือการ initialize the annotator ด้วยเอกสารที่คุณต้องการทำงานด้วย ด้านล่างเป็นรูปแบบการเริ่มต้นพื้นฐาน:

import com.groupdocs.annotation.Annotator;

public class Feature1 {
    public void loadAnnotator(String fileName) {
        try (final Annotator annotator = new Annotator(fileName)) {
            // Ready to use!
        }
    }
}

ฟีเจอร์ 1: การโหลดและการเริ่มต้น Annotator

ฟีเจอร์นี้แสดงการเริ่มต้น Annotator ด้วยเส้นทางไฟล์เอกสาร, การตั้งค่าแอปพลิเคชัน Java ของคุณสำหรับงานทำเครื่องหมาย.

import com.groupdocs.annotation.Annotator;

public class Feature1 {
    public void loadAnnotator(String fileName) {
        try (final Annotator annotator = new Annotator(fileName)) {
            // Annotator initialized and ready.
        }
    }
}

การสร้างเครื่องหมาย

ฟีเจอร์ 2: การสร้าง Area Annotation

Area annotations ให้คุณไฮไลท์พื้นที่สี่เหลี่ยม. ทำตามขั้นตอนต่อไปนี้เพื่อสร้างหนึ่งรายการ:

import com.groupdocs.annotation.models.Rectangle;
import com.groupdocs.annotation.models.annotationmodels.AreaAnnotation;

public class Feature2 {
    public AreaAnnotation createAreaAnnotation() {
        AreaAnnotation area = new AreaAnnotation();
        area.setBox(new Rectangle(100, 100, 100, 100));
        area.setBackgroundColor(65535);
        area.setPageNumber(1);

        return area;
    }
}

ฟีเจอร์ 3: การสร้าง Ellipse Annotation

Ellipse annotations เหมาะสำหรับไฮไลท์รูปวงกลมหรือวงรี.

import com.groupdocs.annotation.models.Rectangle;
import com.groupdocs.annotation.models.annotationmodels.EllipseAnnotation;

public class Feature3 {
    public EllipseAnnotation createEllipseAnnotation() {
        EllipseAnnotation ellipse = new EllipseAnnotation();
        ellipse.setBox(new Rectangle(100, 100, 100, 100));
        ellipse.setBackgroundColor(123456);
        ellipse.setPageNumber(2);

        return ellipse;
    }
}

การเพิ่มหลายเครื่องหมาย

คุณสามารถ add multiple annotations ในการเรียกเดียว, ซึ่งช่วยปรับปรุงประสิทธิภาพและทำให้โค้ดของคุณเป็นระเบียบ.

import com.groupdocs.annotation.Annotator;
import java.util.ArrayList;
import java.util.List;
import com.groupdocs.annotation.models.AnnotationBase;
import com.groupdocs.annotation.models.annotationmodels.AreaAnnotation;
import com.groupdocs.annotation.models.annotationmodels.EllipseAnnotation;

public class Feature4 {
    public void addAnnotations(Annotator annotator) {
        AreaAnnotation area = new AreaAnnotation();
        area.setBox(new Rectangle(100, 100, 100, 100));
        area.setBackgroundColor(65535);
        area.setPageNumber(1);

        EllipseAnnotation ellipse = new EllipseAnnotation();
        ellipse.setBox(new Rectangle(100, 100, 100, 100));
        ellipse.setBackgroundColor(123456);
        ellipse.setPageNumber(2);

        List<AnnotationBase> annotations = new ArrayList<>();
        annotations.add(area);
        annotations.add(ellipse);

        annotator.add(annotations);
    }
}

การบันทึกเอกสาร – วิธีบันทึก PDF ที่ทำเครื่องหมายแล้ว

ตอนนี้เครื่องหมายของคุณพร้อมแล้ว, คุณจะ save annotated PDF เฉพาะประเภทเครื่องหมายที่ต้องการ.

public class Feature5 {
    public String getOutputPath(String fileName) {
        return "YOUR_OUTPUT_DIRECTORY" + "/filtered_output.pdf";
    public void saveAnnotatedDocument(Annotator annotator, String outputPath) {
        SaveOptions saveOptions = new SaveOptions();
        saveOptions.setAnnotationTypes(AnnotationType.ELLIPSE);

        annotator.save(outputPath, saveOptions);
    }
}

แนวทางปฏิบัติที่ดีที่สุดสำหรับ Annotation ใน Java

  • ใช้ try‑with‑resources เพื่อปิด Annotator โดยอัตโนมัติและปลดปล่อยหน่วยความจำ.
  • เพิ่มเครื่องหมายเป็นชุด (ตามที่แสดงในฟีเจอร์ 4) เพื่อลดภาระ I/O.
  • ระบุเฉพาะประเภทเครื่องหมายที่ต้องการ ใน SaveOptions เพื่อให้ไฟล์มีขนาดเล็ก.
  • ปล่อยเอกสารขนาดใหญ่ จากหน่วยความจำหลังการบันทึกเพื่อหลีกเลี่ยงการรั่วไหล.

การประยุกต์ใช้งานจริง

  • การตรวจสอบเอกสารทางกฎหมาย: ไฮไลท์ข้อกำหนดและแนบความคิดเห็นสำหรับทนาย.
  • แหล่งการเรียนการสอน: ทำเครื่องหมายในตำราเรียนสำหรับกลุ่มศึกษา.
  • คู่มือเทคนิค: ทำเครื่องหมายบนแผนภาพวิศวกรรมด้วยโน้ตและคำเตือน.

ข้อควรพิจารณาด้านประสิทธิภาพ

  • จำกัดการทำเครื่องหมายพร้อมกันบน PDF ขนาดใหญ่มาก.
  • ใช้ annotation best practices ที่แนะนำเพื่อจัดการหน่วยความจำอย่างมีประสิทธิภาพ.
  • ทำการ profiling แอปพลิเคชันของคุณด้วย Java Flight Recorder หากพบว่าช้า.

ปัญหาที่พบบ่อยและวิธีแก้ไข

ปัญหาวิธีแก้
OutOfMemoryError when loading big PDFsโหลดเอกสารในโหมดสตรีมมิ่งหรือเพิ่มขนาด heap ของ JVM.
เครื่องหมายไม่ปรากฏหลังการบันทึกตรวจสอบว่า SaveOptions มี AnnotationType ที่ถูกต้อง.
ข้อผิดพลาดใบอนุญาตตรวจสอบว่าไฟล์ใบอนุญาต trial หรือ permanent ถูกอ้างอิงอย่างถูกต้อง.

คำถามที่พบบ่อย

Q: ฉันสามารถเพิ่มความคิดเห็นข้อความนอกเหนือจากรูปร่างได้หรือไม่?
A: ได้, GroupDocs.Annotation รองรับประเภท TextAnnotation และ CommentAnnotation — เพียงสร้างอินสแตนซ์ของโมเดลที่เหมาะสมและเพิ่มลงในรายการ.

Q: สามารถแก้ไขเครื่องหมายที่มีอยู่ได้หรือไม่?
A: แน่นอน. ดึงเครื่องหมายโดยใช้ ID, แก้ไขคุณสมบัติของมัน, แล้วเรียก annotator.update(updatedAnnotation).

Q: ฉันจะลบเครื่องหมายที่ไม่ต้องการออกได้อย่างไร?
A: ใช้ annotator.delete(annotationId) เพื่อลบเครื่องหมายเฉพาะ หรือ annotator.clear(pageNumber) เพื่อลบเครื่องหมายทั้งหมดในหน้า.

Q: ไลบรารีทำงานกับ PDF ที่มีการป้องกันด้วยรหัสผ่านหรือไม่?
A: ใช่. ให้รหัสผ่านเมื่อสร้างอินสแตนซ์ Annotator: new Annotator(filePath, password).

Q: ต้องการเวอร์ชัน Java ใด?
A: ไลบรารีเข้ากันได้กับ Java 8 และใหม่กว่า; เราแนะนำให้ใช้เวอร์ชัน LTS ล่าสุดเพื่อประสิทธิภาพที่ดีที่สุด.

สรุป

ตอนนี้คุณมีโซลูชันครบวงจรสำหรับ วิธีทำเครื่องหมาย PDF ด้วย GroupDocs.Annotation สำหรับ Java. โดยทำตามขั้นตอนข้างต้น—การตั้งค่า Maven dependency, การเริ่มต้น annotator, การสร้างและเพิ่มหลายเครื่องหมาย, และการใช้แนวทางปฏิบัติที่ดีที่สุดสำหรับการทำเครื่องหมาย—คุณสามารถเสริมแอปพลิเคชัน Java ใด ๆ ด้วยความสามารถในการทำเครื่องหมายเอกสารที่ทรงพลัง.


Last Updated: 2026-03-24
Tested With: GroupDocs.Annotation 25.2
Author: GroupDocs