Był czas, kiedy omawialiśmy treść dokumentu i opinie w długich wątkach e-mail z wieloma załącznikami i różnymi wersjami plików. Teraz możemy po prostu użyć adnotacji, aby oznaczyć dokument wiadomościami i odpowiedziami i wysłać go. W tym artykule dowiesz się, jak programowo dodawać adnotacje do dokumentów PDF w Javie za pomocą aplikacji. Dodatkowo zobaczymy, jak usunąć adnotacje z plików PDF za pomocą tego samego API Java.

Oto tematy omówione pokrótce poniżej:

PDF Annotator Java API

Aby radzić sobie z adnotacjami w dokumentach i obrazach w aplikacjach Java, GroupDocs udostępnia GroupDocs.Annotation for Java. Za pomocą interfejsu API można dodawać, usuwać i wyodrębniać adnotacje z dokumentów edytorów tekstu, arkuszy kalkulacyjnych, prezentacji, obrazów, wiadomości e-mail, rysunków programu Visio, niektórych programów AutoCAD i formatów obrazów cyfrowych, takich jak DICOM. Ponadto interfejs API umożliwia dodawanie adnotacji do plików PDF. Możesz zajrzeć do dokumentacji, aby poznać długą listę obsługiwanych formatów dokumentów dla adnotacji.

Pobierz i skonfiguruj

Pobierz bibliotekę adnotacji z plików do pobrania lub po prostu dodaj następującą konfigurację pom.xml w swoich aplikacjach Java opartych na Maven, aby wypróbować przykłady z tego artykułu oraz wiele innych przykładów dostępnych na GitHub. Aby uzyskać szczegółowe informacje, odwiedź Odniesienie do interfejsu API.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-annotation</artifactId>
        <version>20.2</version> 
</dependency>

Dodaj adnotacje do pliku PDF w Javie

Przejdźmy szybko do dodawania różnych rodzajów adnotacji do dokumentu PDF. Ponieważ istnieje wiele różnych typów adnotacji, w tym artykule możemy nie omówić ich wszystkich. Wspomnę tylko o nich, a wy dowiecie się o każdej adnotacji z osobna.

  • Adnotacja obszaru / prostokąta

  • Strzałka

  • Dystans

  • Elipsa

  • Atrakcja

  • Połączyć

  • Punkt

  • Polilinia

  • Wymiana

  • Redakcja zasobów

  • Skreślony

  • Pole tekstowe

  • Redagowanie tekstu

  • Podkreślać

  • znak wodny

Zacznijmy dodawać niektóre z nich w dokumencie PDF.

Dodaj adnotację strzałki do pliku PDF przy użyciu języka Java

Poniżej przedstawiono kroki dodawania adnotacji ze strzałkami do dokumentu PDF.

Adnotacja strzałki
  • Załaduj dokument PDF za pomocą klasy Annotator.
  • Zainicjuj adnotację strzałki za pomocą klasy ArrowAnnotation.
  • Ustaw pozycję i rozmiar strzałki za pomocą metody setBox ArrowAnnotation.
  • Dodaj utworzoną adnotację strzałki do obiektu Adnotator.
  • Zapisz plik PDF z adnotacjami, podając ścieżkę za pomocą metody save.

Poniższy przykładowy kod pokazuje, jak dodać adnotację strzałki do dokumentu PDF przy użyciu języka Java.

// Dodaj adnotację strzałki do pliku PDF przy użyciu języka Java
final Annotator annotator = new Annotator("document.pdf");
ArrowAnnotation arrow = new ArrowAnnotation();
arrow.setBox(new Rectangle(100, 100, 100, 100)); // (x, y, width, height)
annotator.add(arrow);
annotator.save("path/annotated-with-arrow.pdf");

Wstaw prostokąt lub adnotację obszaru do pliku PDF przy użyciu języka Java

Możesz dostosować dowolną adnotację podczas dodawania jej do dokumentu. Poniżej przedstawiono kroki, aby dodać adnotację prostokąta lub obszaru do dokumentu PDF z niewielkimi dostosowaniami. Jest to podobne do dodawania adnotacji Arrow, ale używa klasy AreaAnnotation zamiast ArrowAnnotation.

  • Załaduj dokument PDF za pomocą klasy Annotator.
  • Zainicjuj adnotację prostokąta za pomocą klasy AreaAnnotation.
  • Ustaw pozycję i rozmiar prostokąta za pomocą metody setBox klasy AreaAnnotation.
  • Ustaw inne właściwości, takie jak kolor, tło, krycie, styl, szerokość pióra, a nawet wiadomości i czas.
  • Dodaj utworzoną adnotację prostokąta do obiektu Annotator.
  • Zapisz plik PDF z adnotacjami, podając ścieżkę za pomocą metody save.
Adnotacja prostokąta lub obszaru

Poniższy przykładowy kod pokazuje, jak dodać adnotację prostokąta/obszaru do dokumentu PDF przy użyciu języka Java.

// Dodaj adnotację obszaru lub adnotację prostokąta do pliku PDF za pomocą języka Java
final Annotator annotator = new Annotator("document.pdf");
AreaAnnotation area = new AreaAnnotation();
area.setBox(new Rectangle(50, 100, 500, 100));
area.setCreatedOn(Calendar.getInstance().getTime());
area.setMessage("Annotate documents and images.");
area.setOpacity(0.7);
area.setPenColor(-13076963);
area.setPenStyle(PenStyle.Dash);
area.setPenWidth((byte) 3);
// dodać do dokumentu
annotator.add(area);
annotator.save("path/annotated-with-rectangle.pdf");

Dodaj adnotację owalną lub elipsę do pliku PDF za pomocą języka Java

Poniżej opisano kroki dodawania adnotacji owalnej lub elipsy do dokumentu PDF.

Elipsy lub adnotacje owalne
  • Załaduj dokument PDF za pomocą klasy Annotator.
  • Zainicjuj adnotację elipsy za pomocą klasy EllipseAnnotation.
  • Ustaw pozycję i rozmiar elipsy za pomocą metody setBox EllipseAnnotation.
  • Dodaj utworzoną adnotację elipsy do obiektu Annotator.
  • Zapisz plik PDF z adnotacjami, podając ścieżkę za pomocą metody save.

Poniższy przykładowy kod pokazuje, jak dodać adnotację owalną lub elipsę do dokumentu PDF przy użyciu języka Java.

// Dodaj adnotację owalną lub elipsę w pliku PDF przy użyciu języka Java
final Annotator annotator = new Annotator("document.pdf");
// Adnotacja owalna lub elipsa
EllipseAnnotation ellipse = new EllipseAnnotation();
ellipse.setBox(new Rectangle(275, 505, 300, 80));
// dodać do dokumentu
annotator.add(area);
annotator.save("path/annotated-with-ellipse.pdf");

Wstaw adnotację odległości do pliku PDF przy użyciu języka Java

Adnotacja odległości

Możesz także dodać adnotację odległości, aby pokazać odległość między dwoma punktami. Poniżej opisano kroki dodawania adnotacji odległości do dokumentu PDF.

  • Załaduj dokument PDF za pomocą klasy Annotator.
  • Zainicjuj adnotację odległości za pomocą klasy DistanceAnnotation.
  • Ustaw rozmiar i położenie adnotacji za pomocą metody setBox DistanceAnnotation.
  • Dodaj utworzony opis odległości do obiektu Adnotator.
  • Zapisz plik PDF z adnotacjami, podając ścieżkę za pomocą metody save.

Poniższy przykładowy kod pokazuje, jak dodać adnotację odległości do dokumentu PDF przy użyciu języka Java.

// Adnotacja odległości przy użyciu języka Java
final Annotator annotator = new Annotator("document.pdf");
// Adnotacja odległości
DistanceAnnotation distance = new DistanceAnnotation();
distance.setBox(new Rectangle(775, 235, 0, 150));
// dodać do dokumentu
annotator.add(area);
annotator.save("path/annotated-with-distance.pdf");

Kompletny kod

Podsumowując, oto kod Java z wyjściem pokazującym wszystkie dodane adnotacje i wiadomości z odpowiedziami przy użyciu wspomnianego kodu Java.

Dodano adnotacje do pliku PDF

Poniższy kod dodaje strzałki, prostokąty, elipsy, adnotacje odległości, komunikaty i odpowiedzi do pliku PDF.

// Dodaj wiele adnotacji do pliku PDF za pomocą języka Java
// Dodawanie adnotacji strzałki, obszaru, owalu (elipsy), odległości do pliku PDF z wiadomościami i odpowiedziami za pomocą języka Java
final Annotator annotator = new Annotator(Constants.INPUT);
// Ustawianie odpowiedzi
Reply reply1 = new Reply();
reply1.setComment("Please look in to these issues.");
reply1.setRepliedOn(Calendar.getInstance().getTime());

Reply reply2 = new Reply();
reply2.setComment("Change Description");
reply2.setRepliedOn(Calendar.getInstance().getTime());

Reply reply3 = new Reply();
reply2.setComment("On-Premises APIs");
reply2.setRepliedOn(Calendar.getInstance().getTime());

Reply reply4 = new Reply();
reply2.setComment("Add images as well.");
reply2.setRepliedOn(Calendar.getInstance().getTime());

java.util.List<Reply> replies = new ArrayList<Reply>();
replies.add(reply1);
replies.add(reply2);
replies.add(reply3);
replies.add(reply4);
// Adnotacja strzałki =================================
ArrowAnnotation arrow = new ArrowAnnotation();
arrow.setBox(new Rectangle(560, 250, 60, -60));
arrow.setCreatedOn(Calendar.getInstance().getTime());
arrow.setMessage("This image is little upwards.");
arrow.setOpacity(0.7);
arrow.setPenColor(-3407872);
arrow.setPenWidth((byte) 2);
arrow.setReplies(replies.subList(0, 1));
// Opis obszaru ===================================
AreaAnnotation area = new AreaAnnotation();
area.setBox(new Rectangle(50, 100, 500, 100));
area.setCreatedOn(Calendar.getInstance().getTime());
area.setMessage("Annotate documents and images.");
area.setOpacity(0.7);
area.setPenColor(-13076963);
area.setPenStyle(PenStyle.Dash);
area.setPenWidth((byte) 3);
area.setReplies(replies.subList(1, 2));
// Adnotacja owalna lub elipsa ========================
EllipseAnnotation ellipse = new EllipseAnnotation();
ellipse.setBox(new Rectangle(275, 505, 300, 80));
ellipse.setCreatedOn(Calendar.getInstance().getTime());
ellipse.setMessage("Shows all the available Annotation APIs.");
ellipse.setOpacity(0.7);
ellipse.setPenColor(-16034924);
ellipse.setPenStyle(PenStyle.Dot);
ellipse.setPenWidth((byte) 3);
ellipse.setReplies(replies.subList(2, 3));
// Adnotacja odległości ===============================
DistanceAnnotation distance = new DistanceAnnotation();
distance.setBox(new Rectangle(775, 235, 0, 150));
distance.setCreatedOn(Calendar.getInstance().getTime());
distance.setMessage("This is the heading area");
distance.setOpacity(0.7);
distance.setPenColor(-21197);
distance.setPenStyle(PenStyle.Solid);
distance.setPenWidth((byte) 1);
distance.setReplies(replies.subList(3, 4));
// Dodawanie adnotacji =================================
annotator.add(arrow);
annotator.add(area);
annotator.add(ellipse);
annotator.add(distance);
// Zapisywanie pliku PDF z adnotacjami ===============================
annotator.save(outputPath);
annotator.dispose();

Usuń adnotacje z pliku PDF w Javie

Poniższe kroki pokazują, jak usunąć wszystkie adnotacje z plików PDF w Javie.

  • Załaduj dokument PDF za pomocą klasy Annotator.
  • Zainicjuj opcje zapisywania przy użyciu klasy SaveOptions.
  • Ustaw typy adnotacji na Brak.
  • Zapisz plik PDF z usuniętymi wszystkimi adnotacjami, podając ścieżkę za pomocą metody zapisz.

Poniższy kod Java usuwa adnotacje z pliku PDF.

// Usuń wszystkie adnotacje z dokumentu PDF za pomocą języka Java
final Annotator annotator = new Annotator("document.pdf");
SaveOptions saveOptions = new SaveOptions();
saveOptions.setAnnotationTypes(AnnotationType.None);
// Zapisz plik PDF bez adnotacji.
annotator.save("path/annotations-removed.pdf", saveOptions);
annotator.dispose();

Wniosek

Krótko mówiąc, nauczyłeś się dodawać adnotacje do plików PDF w aplikacjach Java. Ponadto widziałeś, jak usunąć wszystkie adnotacje z dowolnego pliku PDF. Teraz powinieneś mieć pewność, że zbudujesz własną aplikację Java do adnotacji dokumentów. Może obsługiwać różne typy adnotacji za pomocą GroupDocs.Annotation for Java.

Więcej informacji, opcji i przykładów można znaleźć w repozytorium documentation i GitHub. W przypadku dalszych pytań skontaktuj się z pomocą techniczną na forum.

Zobacz też