Hoe te werken met annotaties in Java

Hoe te werken met annotaties in Java

Deze gids laat zien hoe je PDF-annotaties kunt maken, tellen, verwijderen en flatten met Aspose.PDF FOSS voor Java. Je leert widget-, vrije-tekst- en markeerannotaties toe te voegen, en PdfAnnotationEditor te gebruiken voor bulkbewerkingen.

Voeg een widget-annotatie toe

WidgetAnnotation vertegenwoordigt een formulierbesturingselement-widget. Stel de randkleur en bijschrift in via AppearanceCharacteristics. Na het configureren van de annotatie, voeg je deze toe aan de annotatiecollectie van de pagina en sla je het document op:

try (Document doc = new Document()) {
    PageCollection pages = doc.getPages();
    Page page = pages.add();
    WidgetAnnotation w = new WidgetAnnotation(page, new Rectangle(50, 50, 150, 80));
    w.getCharacteristics().setBorder(Color.fromRgb(0, 0, 1));
    w.getCharacteristics().setCaption("Submit");
    page.getAnnotations().add(w);
    doc.save("widget.pdf");
}

Voeg een vrije-tekst-annotatie toe

Een FreeTextAnnotation toont een tekstcommentaar op een specifieke locatie op de pagina. Het standaard uiterlijk definieert het lettertype, de grootte en de kleur van de annotatietekst:

try (Document doc = new Document()) {
    PageCollection pages = doc.getPages();
    Page page = pages.add();
    DefaultAppearance da = new DefaultAppearance("Helv", 12, Color.BLACK);
    FreeTextAnnotation fta = new FreeTextAnnotation(page,
        new Rectangle(100, 300, 350, 350), da);
    fta.setContents("Review this section carefully.");
    page.getAnnotations().add(fta);
    doc.save("freetext.pdf");
}

Voeg een markeerannotatie toe

HighlightAnnotation markeert visueel een tekstgebied op de pagina. Plaats het met behulp van een Rectangle die de te markeren tekst bedekt, en voeg het vervolgens toe aan de annotatiecollectie:

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, 400, 220));
    page.getAnnotations().add(h);
    doc.save("highlighted.pdf");
}

Aantal annotaties op een pagina

Toegang tot de annotatiecollectie van de pagina rechtstreeks om annotaties te tellen of te itereren:

try (Document doc = new Document("input.pdf")) {
    PageCollection pages = doc.getPages();
    Page page = pages.get(1);
    int count = page.getAnnotations().size();
    System.out.println("Annotations on page 1: " + count);
}

Annotaties verwijderen op type

Gebruik PdfAnnotationEditor om alle annotaties van een specifiek type uit een document te verwijderen. Roep deleteAnnotations(type) aan met de naam van het annotatietype, en sla vervolgens op:

try (PdfAnnotationEditor editor = new PdfAnnotationEditor()) {
    editor.bindPdf("input.pdf");
    editor.deleteAnnotations("Highlight");
    editor.save("output.pdf");
}

Annotaties flatten

Het flatten van annotaties voegt ze permanent samen met de pagina-inhoud, zodat ze niet langer bewerkbaar of verwijderbaar zijn als afzonderlijke objecten:

try (PdfAnnotationEditor editor = new PdfAnnotationEditor()) {
    editor.bindPdf("annotated.pdf");
    editor.flattenAnnotations();
    editor.save("flat.pdf");
}

Zie ook

 Nederlands