PDF에 주석을 추가하는 방법

PDF에 주석을 추가하는 방법

PDF 파일에 텍스트 주석을 추가하여 문서에 작성된 내용을 요약하고 중요 사항 및 기타 세부 사항을 기록합니다. 그러나 문서의 아무 곳에나 텍스트 주석을 추가할 수 있으며, 한 번 생성되면 팝업으로 표시되고 닫힐 때는 아이콘으로 표시됩니다. 이 블로그 게시물에서는 PDF용 Java API를 사용하여 PDF 파일에 주석을 추가하는 방법을 배웁니다. 또한 프로그래밍 방식으로 파일에 텍스트 주석을 추가하는 데 도움이 되는 방법을 살펴봅니다.

이 가이드에서는 다음 사항을 다룹니다.

PDF용 Java API - 설치

이 라이브러리의 설치 절차는 단 한 단계입니다. 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. textAnnotation 객체로 Border 객체의 생성자를 인스턴스화합니다.
  9. setWidthsetDash 메서드를 호출하여 테두리 및 대시 패턴의 너비를 설정합니다.
  10. 컬렉션에 주석을 추가하는 add 메서드를 호출합니다.
  11. save 메소드는 주석 파일을 저장합니다.

다음 코드를 복사하여 기본 파일에 붙여넣습니다.

// Document 클래스의 인스턴스를 생성하고 소스 PDF 파일을 로드합니다.
Document document = new Document(  "table.pdf");
// get_Item 메서드를 호출하여 인덱스별로 페이지 가져오기 
Page page = document.getPages().get_Item(1);
// 사각형을 나타내는 Rectangle 클래스의 객체를 초기화합니다.
Rectangle rect = new Rectangle(200, 750, 400, 790);
// TextAnnotation 클래스의 객체를 생성하여 지정된 페이지에 새 Text 주석을 생성합니다. 
TextAnnotation textAnnotation = new TextAnnotation(page, rect);
// setTitle 메소드는 주석의 제목 표시줄에 표시될 텍스트를 설정합니다. 
textAnnotation.setTitle("Aspose User");
// setSubject 메소드는 객체의 설명을 나타내는 텍스트를 설정합니다. 
textAnnotation.setSubject("Sample Subject");
// setContents 메소드는 주석 텍스트를 설정합니다. 
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");

아래 이미지에서 출력을 볼 수 있습니다.

텍스트 주석

텍스트 주석 읽기

마찬가지로 아래에 언급된 단계에 따라 기존 PDF 파일에서 텍스트 주석을 읽을 수 있습니다.

  1. Document 클래스의 인스턴스를 만들고 원본 PDF 파일을 로드합니다.
  2. getItem 메서드를 호출하여 인덱스별로 페이지를 가져옵니다.
  3. AnnotationSelector를 사용하여 주석을 필터링합니다.
  4. accept 메서드를 호출하여 주석을 처리하는 방문자를 수락합니다.
  5. getSelected 메소드를 호출하여 선택된 Annotation 객체의 목록을 가져옵니다.
  6. 결과를 인쇄합니다.

다음 코드를 복사하여 기본 파일에 붙여넣습니다.

// Document 클래스의 인스턴스를 만들고 소스 PDF 파일을 로드합니다. 
Document document = new Document(  "sample_textannot.pdf");
// get_Item 메서드를 호출하여 다음을 호출하여 인덱스별로 페이지를 가져옵니다.   
Page page = document.getPages().get_Item(1);
// AnnotationSelector를 사용하여 주석 필터링 
AnnotationSelector annotationSelector = new AnnotationSelector(
        new TextAnnotation(page, Rectangle.getTrivial()));
// 어노테이션을 처리하기 위해 방문자를 승인하려면 accept 메소드를 호출하십시오. 
page.accept(annotationSelector);
//  getSelected 메소드를 호출하여 선택된 Annotation 객체의 목록을 가져옵니다. 
List<Annotation> TextAnnotations = annotationSelector.getSelected();
// 결과를 인쇄
for (Annotation fa : TextAnnotations) {
    System.out.println(fa.getRect());
}

텍스트 주석 삭제

또한 다음 단계와 코드 조각에 따라 프로그래밍 방식으로 텍스트 주석을 삭제할 수 있습니다.

  1. Document 클래스의 개체를 만들고 원본 PDF 파일을 로드합니다.
  2. AnnotationSelector를 사용하여 주석을 필터링합니다.
  3. accept 메서드를 호출하여 주석을 처리할 방문자를 수락합니다.
  4. getSelected 메소드를 호출하여 선택된 Annotation 객체의 목록을 가져옵니다.
  5. delete 메서드를 호출하여 모든 텍스트 주석을 반복하고 주석을 삭제합니다.
  6. save 메서드를 호출하여 파일을 저장합니다.

다음 코드를 복사하여 기본 파일에 붙여넣습니다.

// 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) {
    // delete 메소드를 호출하여 주석 삭제 
}
// save 메소드를 호출하여 파일 저장 
document.save ( "sample_textannot_del.pdf");

무료 라이선스 받기

무료 임시 라이선스를 사용하여 평가 제한 없이 API를 사용해 볼 수 있습니다.

합산

이것으로 이 블로그 포스트를 마칩니다. 프로그래밍 방식으로 PDF 파일에 주석을 추가하는 방법을 살펴보았습니다. 또한 이 PDF용 Java API를 사용하여 기존 PDF 문서에서 텍스트 주석을 읽고 삭제하는 방법도 배웠습니다. 또한 API 방법에 대한 추가 탐색을 위해 문서를 방문할 수 있습니다.

또한 시작하기 가이드를 따르는 것이 좋습니다.

마지막으로 conholdate.com이 새 블로그 게시물을 작성하고 있습니다. 따라서 정기적인 업데이트를 위해 연락을 유지하십시오.

질문하기

포럼에서 질문이나 질문에 대해 알려주실 수 있습니다.

자주 묻는 질문

PDF에 무료로 주석을 달 수 있습니까?

링크를 방문하여 PDF용 Java API에 의해 노출된 코드 스니펫 및 API 메소드를 확인하십시오.

또한보십시오