Annotations
Denna guide visar hur man lägger till, konfigurerar och tar bort PDF-annotationer med hjälp av Annotation klasshierarki i Aspose.PDF FOSS för Java. du kommer att lära dig att skapa widget, gratis text, highlight och cirkel anmälningar, och att blanda eller Ta bort dem med hjälp av PdfAnnotationEditor.
Annotation hierarkier
Abstraktet är Annotation klass är grunden för alla PDF-annotationer. Alla annoteringar är placerade på A Page I A Rectangle och läggs till via page.getAnnotations().add(annotation).
WidgetAnnotation
WidgetAnnotation representerar en form widget. utseendet kontrolleras genom AppearanceCharacteristics,som uttrycker setBorder(), setBackground(), setRotate(),och setCaption().
try (Document doc = new Document()) {
PageCollection pages = doc.getPages();
Page page = pages.add();
WidgetAnnotation w = new WidgetAnnotation(page, new Rectangle(0, 0, 100, 50));
w.getCharacteristics().setBorder(Color.fromRgb(1, 0, 0));
w.getCharacteristics().setCaption("Submit");
page.getAnnotations().add(w);
doc.save("annotated.pdf");
}FreeTextAnnotation
FreeTextAnnotation visar en text callout på ett angivet läge. det accepterar en DefaultAppearance att ange teckensnittet, storleken och färgen i anteckningstexten.
DefaultAppearance da = new DefaultAppearance("Helv", 12, Color.BLACK);
FreeTextAnnotation fta = new FreeTextAnnotation(page,
new Rectangle(50, 50, 200, 100), da);
fta.setContents("Review comment here");
page.getAnnotations().add(fta);setCallout(double[][]) Ställ en tre-punkts callout linje för anmälningen. getIntent() återvänder anmälningen till FreeTextIntent värde .
Markera anmärkningar
HighlightAnnotation och UnderlineAnnotation Markera textspänningar med quad poäng. Den getQuadPoints() Metoden returnerar en 8-element array som definierar de fyra hörnen. i den markerade regionen.
try (Document doc = new Document("input.pdf")) {
PageCollection pages = doc.getPages();
Page page = pages.get(1);
HighlightAnnotation h = new HighlightAnnotation(page,
new Rectangle(100, 200, 300, 220));
page.getAnnotations().add(h);
doc.save("highlighted.pdf");
}CircleAnnotation och CaretAnnotion
CircleAnnotation dra en ellips på den angivna rektangeln; CaretAnnotation Markerade en inbäddningspunkt i text. båda förlängs Annotation och delar samma färg och gränsförsäkringar .
try (Document doc = new Document()) {
PageCollection pages = doc.getPages();
Page page = pages.add();
CircleAnnotation circle = new CircleAnnotation(page, new Rectangle(100, 100, 200, 200));
circle.setColor(Color.fromRgb(0, 0, 1));
page.getAnnotations().add(circle);
doc.save("circle.pdf");
}Flatterande anmärkningar
Användning PdfAnnotationEditor.flattenAnnotations() för att kombinera alla anmälningar i Webbplatsens innehåll strömmar, vilket gör dem icke-redigerbara.
try (PdfAnnotationEditor editor = new PdfAnnotationEditor()) {
editor.bindPdf("annotated.pdf");
editor.flattenAnnotations();
editor.save("flat.pdf");
}Ta bort anmälningar per typ
Call deleteAnnotations(type) med ett anmälningstypnamn för att ta bort alla anmärkningar av den typen från varje sida i det länkade dokumentet:
try (PdfAnnotationEditor editor = new PdfAnnotationEditor()) {
editor.bindPdf("input.pdf");
editor.deleteAnnotations("Highlight");
editor.save("output.pdf");
}