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");
}

Se även

 Svenska