워터마크는 주로 문서를 초안으로 언급하고 기밀 문서의 불법 사용을 방지하는 데 사용됩니다. 초안이 완성되었거나 기밀 유지가 끝나면 해당 문서에서 워터마크를 제거할 수 있습니다. 워터마크는 텍스트 또는 이미지 기반일 수 있습니다. 이 기사에서는 Java의 PDF 문서에서 워터마크를 제거하는 방법에 대해 살펴보겠습니다.

PDF 파일에서 프로그래밍 방식으로 워터마크를 제거합니다.

PDF 워터마크를 제거하는 Java API

GroupDocs.Watermark파일 형식이 다른 문서 및 이미지 내의 워터마크를 처리하는 Java API를 제공합니다. 워터마크 제거 앱을 만드는 경우 다음과 같은 몇 가지 유용한 방법을 제공합니다.

  • PDF 문서에서 모든 워터마크 제거
  • 하이퍼링크 워터마크 제거
  • 특정 텍스트 서식으로 워터마크 삭제

Java 개발자가 GroupDocs.Watermark for Java API를 사용하여 다양한 방법으로 PDF에서 워터마크를 제거하는 방법을 알아보겠습니다. 먼저 애플리케이션과 함께 API를 다운로드하고 구성합니다.

다운로드 또는 구성

downloads 섹션에서 JAR 파일을 다운로드하거나 Java 애플리케이션 내에서 최신 저장소 및 종속성 Maven 구성을 사용할 수 있습니다.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>https://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-watermark</artifactId>
        <version>21.3</version> 
</dependency>

Java의 PDF 파일에서 모든 워터마크 제거

API를 사용하면 문서에서 특정 워터마크와 모든 워터마크를 쉽게 찾아서 제거할 수 있습니다. 다음 단계는 Java의 PDF 문서에서 모든 워터마크를 제거하는 방법을 보여줍니다.

  • 워터마커를 사용하여 PDF 문서를 로드합니다.
  • 검색을 사용하여 모든 가능한 워터마크를 컬렉션으로 가져옵니다.
  • 전체 컬렉션을 탐색하고 모든 워터마크 또는 기준을 충족하는 워터마크를 제거합니다.
  • 워터마크가 없는 업데이트된 PDF를 저장합니다.

다음 Java 코드는 PDF 문서에서 모든 워터마크를 제거합니다.

// Java의 PDF 및 기타 문서에서 워터마크 제거
Watermarker watermarker = new Watermarker("filepath/document-with-watermarks.pdf");

PossibleWatermarkCollection possibleWatermarks = watermarker.search();
for (int i = 0 ; i < watermarks.getCount(); i++)
{
    // 문서 내의 색인을 언급하여 모든 워터마크를 제거하십시오.
    possibleWatermarks.removeAt(i);
}
watermarker.save("filepath/no-watermarks.pdf");
watermarker.close();

Java에서 하이퍼링크 워터마크 제거

워터마킹 API를 사용하면 PDF 문서에서 하이퍼링크를 검색하고 제거할 수 있습니다. 다음 단계를 통해 Java 응용 프로그램 내의 PDF 문서에서 하이퍼링크 워터마크를 제거할 수 있습니다.

  • 워터마커를 사용하여 PDF 파일을 로드합니다.
  • 검색을 이용하여 워터마크 가능을 컬렉션으로 가져옵니다.
  • 컬렉션을 순회하고 기준을 충족하는 워터마크를 제거합니다.
  • 더 이상 워터마크가 없는 업데이트된 PDF를 저장합니다.

다음 Java 코드 샘플은 PDF 문서에서 특정 URL이 있는 하이퍼링크 워터마크를 찾아 제거하는 방법을 보여줍니다.

// Java의 PDF에서 하이퍼링크 워터마크 제거
Watermarker watermarker = new Watermarker("path/watermark-document.pdf");

PossibleWatermarkCollection watermarks = watermarker.search(new TextSearchCriteria(Pattern.compile("someurl.com")));
for (int i = 0 ; i < watermarks.getCount(); i++)
{
    if (HyperlinkPossibleWatermark.class.isInstance(watermarks.get_Item(i)))
    {
        System.out.println(watermarks.get_Item(i).getText());
        watermarks.removeAt(i);
    }
}
watermarker.save("path/no-hyperlink-watermarks.pdf");

Java에서 특정 텍스트 서식이 있는 PDF에서 워터마크 제거

특정 텍스트 서식이 있는 워터마크도 제거할 수 있습니다. 글꼴 이름, 크기, 색상 등을 검색 기준으로 제공할 수 있습니다. API는 속성이 일치하는 워터마크를 찾습니다. 다음 단계는 Java에서 특정 텍스트 서식이 있는 PDF 파일에서 워터마크를 검색하고 제거하는 방법을 보여줍니다.

  • 워터마커를 사용하여 PDF 파일을 로드합니다.
  • TextFormattingSearchCriteria를 이용하여 검색 기준을 설정합니다.
  • 필요한 모든 서식 속성을 제공합니다.
  • 정의된 기준을 제공하여 모든 가능한 워터마크를 검색하고 컬렉션으로 가져옵니다.
  • clear() 메서드를 사용하여 검색된 모든 워터마크를 제거합니다.
  • 정의된 속성으로 워터마크가 없는 업데이트된 PDF를 저장합니다.

다음 Java 코드는 지정된 텍스트 서식이 있는 PDF 문서에서 워터마크를 제거합니다.

// Java의 PDF에서 특정 텍스트 형식의 워터마크 제거
Watermarker watermarker = new Watermarker("path/watermarks.pdf");

TextFormattingSearchCriteria criteria = new TextFormattingSearchCriteria();
criteria.setForegroundColorRange(new ColorRange());
criteria.getForegroundColorRange().setMinHue(-5);
criteria.getForegroundColorRange().setMaxHue(10);
criteria.getForegroundColorRange().setMinBrightness(0.01f);
criteria.getForegroundColorRange().setMaxBrightness(0.99f);
criteria.setBackgroundColorRange(new ColorRange());
criteria.getBackgroundColorRange().setEmpty(true);
criteria.setFontName("Arial");
criteria.setMinFontSize(19);
criteria.setMaxFontSize(42);
criteria.setFontBold(true);

PossibleWatermarkCollection watermarks = watermarker.search(criteria);
watermarks.clear();
watermarker.save("path/removed-watermarks.pdf");
watermarker.close();

결론

요약하자면 Java의 PDF 문서에서 다양한 워터마크를 제거하는 방법을 배웠습니다. 적용된 워터마크를 모두 제거한 다음 하이퍼링크 워터마크와 특정 텍스트 서식이 있는 워터마크를 제거했습니다. PDF 문서에서 워터마크를 찾아 제거하기 위한 자체 Java 애플리케이션을 빌드해 보십시오. 또한 문서에서 GroupDocs.Watermark for Java에 대해 자세히 알아볼 수 있습니다. 문의 사항은 포럼을 통해 문의해 주세요.

또한보십시오