Znaki wodne są najczęściej używane do wspomnianych dokumentów jako wersje robocze oraz w celu uniknięcia nielegalnego wykorzystania dokumentów poufnych. Po zakończeniu sfinalizowania wersji roboczej lub poufności można usunąć znaki wodne z takich dokumentów. Znaki wodne mogą być oparte na tekście lub obrazie. W tym artykule przyjrzymy się, jak usunąć znaki wodne z dokumentów PDF w Javie.

Java API do usuwania znaków wodnych PDF
GroupDocs.Watermark zapewnia Java API do obsługi znaków wodnych w dokumentach i obrazach w różnych formatach plików. Jeśli tworzysz aplikację do usuwania znaku wodnego, zapewnia ona kilka przydatnych sposobów:
- Usuń wszystkie znaki wodne z dokumentu PDF
- Usuń znaki wodne hiperłączy
- Usuń znaki wodne z określonym formatowaniem tekstu
Dowiedzmy się, jak programista Java może na różne sposoby usuwać znaki wodne z plików PDF za pomocą interfejsu API GroupDocs.Watermark for Java. Przede wszystkim pobierz i skonfiguruj API ze swoją aplikacją.
Pobierz lub skonfiguruj
Możesz pobrać plik JAR z sekcji downloads lub skorzystać z najnowszych konfiguracji repozytorium i zależności Maven w swoich aplikacjach 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>
Usuń wszystkie znaki wodne z plików PDF w Javie
Interfejs API umożliwia łatwe znajdowanie, a następnie usuwanie określonego znaku wodnego i wszystkich znaków wodnych z dokumentu. Poniższe kroki pokazują, jak usunąć wszystkie znaki wodne z dokumentu PDF w Javie.
- Załaduj dokument PDF za pomocą Znacznik wodny.
- Pobierz wszystkie możliwe znaki wodne jako kolekcję za pomocą wyszukiwania.
- Przejrzyj całą kolekcję i usuń każdy znak wodny lub ten, który spełnia kryterium.
- Zapisz zaktualizowany plik PDF bez znaku wodnego.
Poniższy kod Java usuwa wszystkie znaki wodne z dokumentu PDF.
// Usuń znaki wodne z plików PDF i innych dokumentów w Javie
Watermarker watermarker = new Watermarker("filepath/document-with-watermarks.pdf");
PossibleWatermarkCollection possibleWatermarks = watermarker.search();
for (int i = 0 ; i < watermarks.getCount(); i++)
{
// Usuń każdy znak wodny, podając indeks w dokumencie.
possibleWatermarks.removeAt(i);
}
watermarker.save("filepath/no-watermarks.pdf");
watermarker.close();
Usuń znak wodny hiperłącza w Javie
API znaku wodnego umożliwia wyszukiwanie i usuwanie hiperłączy z dokumentu PDF. Poniższe kroki umożliwiają usunięcie znaków wodnych hiperłączy z dokumentu PDF w aplikacji Java.
- Załaduj plik PDF za pomocą Znacznik wodny.
- Pobierz możliwe znaki wodne jako kolekcję za pomocą wyszukiwania.
- Przejrzyj kolekcję i usuń znaki wodne spełniające kryterium.
- Zapisz zaktualizowany plik PDF bez znaków wodnych.
Poniższy przykładowy kod Java pokazuje, jak znaleźć i usunąć znaki wodne hiperłączy z określonym adresem URL z dokumentu PDF.
// Usuń znaki wodne hiperłączy z plików PDF w Javie
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");
Usuń znak wodny z pliku PDF z określonym formatowaniem tekstu w Javie
Można również usunąć znak wodny mający określone formatowanie tekstu. Jako kryterium wyszukiwania możesz podać nazwę czcionki, jej rozmiar, kolor itp. Interfejs API znajdzie znaki wodne o dopasowanych właściwościach. Poniższe kroki pokazują, jak wyszukiwać i usuwać znaki wodne z pliku PDF o określonym formatowaniu tekstu w Javie.
- Załaduj plik PDF za pomocą Znacznik wodny.
- Ustaw kryterium wyszukiwania za pomocą TextFormattingSearchCriteria.
- Podaj wszystkie wymagane właściwości formatowania.
- Wyszukaj i uzyskaj wszystkie możliwe znaki wodne jako kolekcję, podając zdefiniowane kryteria.
- Usuń wszystkie wyszukane znaki wodne za pomocą metody clear().
- Zapisz zaktualizowany plik PDF bez znaku wodnego ze zdefiniowanymi właściwościami.
Poniższy kod Java usuwa znaki wodne z dokumentu PDF o określonym formatowaniu tekstu.
// Usuń znaki wodne z określonym formatowaniem tekstu z pliku PDF w Javie
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();
Wniosek
Podsumowując, nauczyliśmy się, jak usuwać różne znaki wodne z dokumentów PDF w Javie. W szczególności usunęliśmy wszystkie zastosowane znaki wodne, a następnie usunęliśmy znaki wodne hiperłączy i znaki wodne z określonym formatowaniem tekstu. Spróbuj zbudować własną aplikację Java do wyszukiwania i usuwania znaków wodnych z dokumentów PDF. Poza tym możesz dowiedzieć się więcej o GroupDocs.Watermark for Java z jego dokumentacji. W przypadku pytań skontaktuj się z nami za pośrednictwem forum.