Java에서 PDF 디지털 서명 마스터하기: 텍스트, 체크박스 및 디지털 필드에 GroupDocs.Signature 사용

소개

PDF에 디지털 서명이 필요하지만 이미지나 디지털 인증서만으로는 부족하신가요? 계약 승인, 문서 서명, 구조화된 동의서 추가 등 어떤 작업을 하든 GroupDocs.Signature for Java가 해결책이 될 것입니다. 이 라이브러리를 사용하면 체크박스 및 디지털 서명과 함께 텍스트 양식 필드 서명을 PDF에 원활하게 통합할 수 있습니다.

이 튜토리얼에서는 Java용 GroupDocs.Signature를 사용하여 텍스트, 체크박스, 디지털 등 다양한 양식 필드 유형을 사용하여 PDF 문서에 서명하는 방법을 살펴보겠습니다. Java 애플리케이션에서 이러한 기능을 효율적으로 구현하는 방법을 배우게 됩니다.

배울 내용:

  • Java용 GroupDocs.Signature를 설정하는 방법
  • 텍스트 양식 필드 서명 구현
  • 체크박스 양식 필드 서명 추가
  • 디지털 양식 필드 서명 통합
  • 성능 최적화 및 다른 시스템과의 통합

구현에 들어가기 전에 몇 가지 전제 조건을 살펴보겠습니다.

필수 조건

이 튜토리얼을 따라하려면 다음이 필요합니다.

  • 자바 개발 키트(JDK): 시스템에 JDK 8 이상이 설치되어 있는지 확인하세요.
  • IDE: IntelliJ IDEA, Eclipse 또는 NetBeans와 같은 Java IDE가 잘 작동합니다.
  • Java 라이브러리용 GroupDocs.Signature: Maven, Gradle을 통해 얻거나 직접 다운로드할 수 있습니다.

환경 설정 요구 사항

GroupDocs.Signature의 기능을 효과적으로 사용하려면 개발 환경에 필요한 종속성과 라이브러리가 설정되어 있어야 합니다.

지식 전제 조건

이 튜토리얼을 따라가려면 Java 프로그래밍에 대한 기본적인 이해와 PDF를 프로그래밍 방식으로 처리하는 데 대한 익숙함이 도움이 될 것입니다.

Java용 GroupDocs.Signature 설정

프로젝트에서 Java용 GroupDocs.Signature를 사용하려면 라이브러리를 종속성에 추가하세요. 방법은 다음과 같습니다.

메이븐:

<dependency>
    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-signature</artifactId>
    <version>23.12</version>
</dependency>

그래들:

implementation 'com.groupdocs:groupdocs-signature:23.12'

직접 다운로드

또한 최신 버전을 다운로드할 수도 있습니다. Java 릴리스용 GroupDocs.Signature.

라이센스 취득 단계

  • 무료 체험: 무료 체험판을 통해 기능을 살펴보세요.
  • 임시 면허: 제한 없이 모든 기능을 테스트할 수 있는 임시 라이선스를 얻습니다.
  • 구입: 장기적인 필요에 부합한다면 라이선스 구매를 고려하세요.

프로젝트에 GroupDocs.Signature를 추가한 후 초기화합니다. Signature 객체는 다음과 같습니다.

import com.groupdocs.signature.Signature;

String filePath = "YOUR_DOCUMENT_DIRECTORY/sample.pdf";
Signature signature = new Signature(filePath);

구현 가이드

구현을 텍스트 양식 필드, 체크박스 양식 필드, 디지털 양식 필드 서명이라는 구체적인 기능으로 나누어 보겠습니다.

텍스트 양식 필드 서명

개요

텍스트 양식 필드로 PDF에 서명하면 사용자 입력을 위한 편집 가능한 필드를 추가할 수 있습니다. 이는 사용자 데이터 입력이 필요한 문서에 유용합니다.

텍스트 양식 필드 서명 설정:

  1. Signature 객체 인스턴스화
    String filePath = "YOUR_DOCUMENT_DIRECTORY/sample.pdf";
    Signature signature = new Signature(filePath);
    
  2. TextFieldSignature 만들기
    import com.groupdocs.signature.domain.signatures.formfield.TextFormFieldSignature;
    
    TextFormFieldSignature textSignature = new TextFormFieldSignature("tbData1", "Value-1");
    
  3. FormFieldSignOptions 구성
    import com.groupdocs.signature.options.sign.FormFieldSignOptions;
    import com.groupdocs.signature.domain.Padding;
    import com.groupdocs.signature.domain.enums.HorizontalAlignment;
    import com.groupdocs.signature.domain.enums.VerticalAlignment;
    
    FormFieldSignOptions optionsTextFF = new FormFieldSignOptions(textSignature);
    optionsTextFF.setHorizontalAlignment(HorizontalAlignment.Left);
    optionsTextFF.setVerticalAlignment(VerticalAlignment.Top);
    optionsTextFF.setMargin(new Padding(10, 20, 0, 0));
    optionsTextFF.setHeight(10);
    optionsTextFF.setWidth(100);
    
  4. 문서에 서명하세요
    import java.util.ArrayList;
    import java.util.List;
    
    List<com.groupdocs.signature.options.sign.SignOptions> listOptions = new ArrayList<>();
    listOptions.add(optionsTextFF);
    
    SignResult signResult = signature.sign("YOUR_OUTPUT_DIRECTORY/SignTextFormFieldSignature_" + Paths.get(filePath).getFileName().toString(), listOptions);
    

체크박스 양식 필드 서명

개요

체크박스 양식 필드는 사용자 선택이나 동의가 필요한 문서에 적합합니다. 이 기능을 사용하면 대화형 체크박스를 쉽게 추가할 수 있습니다.

체크박스 양식 필드 서명 설정:

  1. Signature 객체 인스턴스화
    String filePath = "YOUR_DOCUMENT_DIRECTORY/sample.pdf";
    Signature signature = new Signature(filePath);
    
  2. CheckboxFormFieldSignature 만들기
    import com.groupdocs.signature.domain.signatures.formfield.CheckboxFormFieldSignature;
    
    CheckboxFormFieldSignature chbSignature = new CheckboxFormFieldSignature("chbData1", true);
    
  3. FormFieldSignOptions 구성
    FormFieldSignOptions optionsTextCHB = new FormFieldSignOptions(chbSignature);
    optionsTextCHB.setHorizontalAlignment(HorizontalAlignment.Center);
    optionsTextCHB.setVerticalAlignment(VerticalAlignment.Top);
    optionsTextCHB.setMargin(new Padding(0, 0, 0, 0));
    optionsTextCHB.setHeight(10);
    optionsTextCHB.setWidth(100);
    
  4. 문서에 서명하세요
    List<com.groupdocs.signature.options.sign.SignOptions> listOptions = new ArrayList<>();
    listOptions.add(optionsTextCHB);
    
    SignResult signResult = signature.sign("YOUR_OUTPUT_DIRECTORY/SignCheckboxFormFieldSignature_" + Paths.get(filePath).getFileName().toString(), listOptions);
    

디지털 양식 필드 서명

개요

디지털 양식 필드를 사용하면 디지털 인증서를 사용하여 안전한 서명이 가능하므로 문서의 진위성과 무결성이 보장됩니다.

디지털 양식 필드 서명 설정:

  1. Signature 객체 인스턴스화
    String filePath = "YOUR_DOCUMENT_DIRECTORY/sample.pdf";
    Signature signature = new Signature(filePath);
    
  2. DigitalFormFieldSignature 만들기
    import com.groupdocs.signature.domain.signatures.formfield.DigitalFormFieldSignature;
    
    DigitalFormFieldSignature digitalSignature = new DigitalFormFieldSignature("dgData1");
    
  3. FormFieldSignOptions 구성
    FormFieldSignOptions optionsTextDIG = new FormFieldSignOptions(digitalSignature);
    optionsTextDIG.setHorizontalAlignment(HorizontalAlignment.Right);
    optionsTextDIG.setVerticalAlignment(VerticalAlignment.Center);
    optionsTextDIG.setMargin(new Padding(0, 50, 0, 0));
    optionsTextDIG.setHeight(50);
    optionsTextDIG.setWidth(50);
    
  4. 문서에 서명하세요
    List<com.groupdocs.signature.options.sign.SignOptions> listOptions = new ArrayList<>();
    listOptions.add(optionsTextDIG);
    
    SignResult signResult = signature.sign("YOUR_OUTPUT_DIRECTORY/SignDigitalFormFieldSignature_" + Paths.get(filePath).getFileName().toString(), listOptions);
    

실제 응용 프로그램

Java용 GroupDocs.Signature는 다재다능하며 여러 가지 실제 시나리오에 적용할 수 있습니다.

  • 계약 관리: 텍스트 필드, 체크박스, 디지털 서명을 통해 계약서 서명을 자동화합니다.
  • 승인 워크플로: 조직 내에서 디지털 승인 시스템을 구현하세요.
  • 고객 계약: 안전한 디지털 서명을 통해 고객 계약을 간소화하세요.

이 포괄적인 가이드는 GroupDocs.Signature를 사용하여 Java 애플리케이션에서 디지털 서명을 확실하게 구현하는 방법을 설명합니다. 더 자세히 알아보려면 이러한 기능을 대규모 문서 관리 시스템이나 자동화된 워크플로에 통합하는 것을 고려해 보세요.