Водяні знаки здебільшого використовуються для згаданих документів як чернеток і для запобігання незаконному використанню конфіденційних документів. Коли чернетку завершено або конфіденційність закінчиться, ви можете видалити водяні знаки з таких документів. Водяні знаки можуть бути текстовими або графічними. У цій статті ми розглянемо, як видалити водяні знаки з документів PDF у Java.

Програмне видалення водяних знаків із файлів PDF.

Java API для видалення водяних знаків PDF

GroupDocs.Watermark надає Java API для роботи з водяними знаками в документах і зображеннях різних форматів файлів. Якщо ви створюєте програму для видалення водяних знаків, вона надасть вам кілька корисних способів:

  • Видаліть усі водяні знаки з документа PDF
  • Видаліть водяні знаки гіперпосилань
  • Видалення водяних знаків із певним форматуванням тексту

Давайте дізнаємося, як Java-розробник може різними способами видалити водяні знаки з PDF за допомогою GroupDocs.Watermark for Java API. Перш за все, завантажте та налаштуйте API для своєї програми.

Завантажити або налаштувати

Ви можете завантажити файл JAR із розділу завантаження або використати найновіші конфігурації репозиторію та залежностей Maven у своїх програмах Java.

<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>

Видалити всі водяні знаки з PDF-файлів у Java

API дає змогу легко знаходити та видаляти певний водяний знак і всі водяні знаки з документа. Наступні кроки показують, як видалити всі водяні знаки з документа PDF у Java.

  • Завантажте PDF-документ за допомогою Watermarker.
  • Отримайте всі можливі водяні знаки як колекцію за допомогою пошуку.
  • Перегляньте всю колекцію та видаліть кожен водяний знак або той, що відповідає критерію.
  • Збережіть оновлений PDF без водяного знака.

Наведений нижче код Java видаляє всі водяні знаки з документа PDF.

// Видаліть водяні знаки з PDF та інших документів у Java
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. Наступні кроки дозволяють видалити водяні знаки гіперпосилання з документа PDF у програмі Java.

  • Завантажте PDF-файл за допомогою Watermarker.
  • Отримайте можливі водяні знаки як колекцію за допомогою пошуку.
  • Перегляньте колекцію та видаліть водяні знаки, які відповідають критерію.
  • Збережіть оновлений PDF без водяних знаків.

У наведеному нижче прикладі коду Java показано, як знайти та видалити водяні знаки гіперпосилання з певною URL-адресою з документа PDF.

// Видаліть водяні знаки гіперпосилання з PDF-файлу в Java
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");

Видаліть водяний знак із PDF-файлу за допомогою спеціального форматування тексту в Java

Водяний знак із певним форматуванням тексту також можна видалити. Ви можете вказати назву шрифту, його розмір, колір тощо як критерій пошуку. API знайде водяні знаки з відповідними властивостями. Наступні кроки демонструють, як шукати та видаляти водяні знаки з файлу PDF із певним форматуванням тексту в Java.

  • Завантажте PDF-файл за допомогою Watermarker.
  • Встановіть критерій пошуку за допомогою TextFormattingSearchCriteria.
  • Надайте всі необхідні властивості форматування.
  • Знайдіть і отримайте всі можливі водяні знаки як колекцію, вказавши визначені критерії.
  • Видаліть усі шукані водяні знаки за допомогою методу clear().
  • Збережіть оновлений PDF без водяного знака з визначеними властивостями.

Наведений нижче код Java видаляє водяні знаки в документі PDF із вказаним форматуванням тексту.

// Видалити водяні знаки з певним форматуванням тексту з PDF-файлу в Java
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();

Висновок

Підводячи підсумок, ми дізналися, як видалити різні водяні знаки з PDF-документів у Java. Ми спеціально видалили всі застосовані водяні знаки, а потім видалили водяні знаки гіперпосилань і водяні знаки з певним форматуванням тексту. Спробуйте створити власну програму Java для пошуку та видалення водяних знаків із документів PDF. Крім того, ви можете дізнатися більше про GroupDocs.Watermark for Java з його документації. Якщо у вас виникли запитання, зв’яжіться з нами через форум.

Дивись також