Jak pracovat s anotacemi v Java

Jak pracovat s anotacemi v Java

Tento návod ukazuje, jak vytvářet, počítat, odstraňovat a zploštit PDF anotace pomocí Aspose.PDF FOSS pro Java. Naučíte se přidávat widgetové, volné textové a zvýrazňovací anotace a používat PdfAnnotationEditor pro hromadné operace.

Přidat widgetovou anotaci

WidgetAnnotation představuje widget ovládacího prvku formuláře. Nastavte barvu okraje a popisek pomocí AppearanceCharacteristics. Po nakonfigurování anotace ji přidejte do kolekce anotací stránky a dokument uložte:

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

Přidat volnou textovou anotaci

FreeTextAnnotation zobrazuje textový komentář na konkrétním místě na stránce. Výchozí vzhled definuje písmo, velikost a barvu textu anotace:

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

Přidat zvýrazňovací anotaci

HighlightAnnotation vizuálně označuje oblast textu na stránce. Umístěte jej pomocí Rectangle, která pokrývá text, který chcete zvýraznit, a poté jej přidejte do kolekce anotací:

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

Počítání anotací na stránce

Přistupujte přímo ke kolekci anotací stránky, abyste mohli počítat nebo iterovat anotace:

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

Odstranění anotací podle typu

Použijte PdfAnnotationEditor k odstranění všech anotací konkrétního typu z dokumentu. Zavolejte deleteAnnotations(type) s názvem typu anotace a poté uložte:

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

Zploštění anotací

Zploštění anotací je sloučí trvale s obsahem stránky, takže již nejsou editovatelné ani odstraňitelné jako samostatné objekty:

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

Viz také:

 Čeština