Водяные знаки в основном используются для упомянутых документов в виде черновиков и во избежание незаконного использования конфиденциальных документов. Когда черновик завершен или конфиденциальность закончилась, вы можете удалить водяные знаки с таких документов. Водяные знаки могут быть текстовыми или графическими. В этой статье мы рассмотрим, как удалить водяные знаки из документов PDF в Java.
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, используя Водяной маркер.
- Получить все возможные водяные знаки в виде коллекции с помощью поиска.
- Пройдитесь по всей коллекции и удалите все водяные знаки или те, которые соответствуют критерию.
- Сохраните обновленный 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, используя Водяной маркер.
- Получить возможные водяные знаки как коллекцию с помощью поиска.
- Просмотрите коллекцию и удалите водяные знаки, соответствующие критерию.
- Сохраните обновленный 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, используя Водяной маркер.
- Установите критерий поиска, используя 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 из его документации. По вопросам обращайтесь к нам через форум.