Anotativas
Este guia mostra como adicionar, configurar e remover anotações PDF usando o Annotation hierarquia de classes em Aspose.PDF FOSS para Java . Você vai aprender a criar widget, texto livre, destaque e anotações de círculo, e para achatar ou Apagar usando: PdfAnnotationEditor.
Hierarquia de anotações
O resumo Annotation classe é a base para todas as anotações PDF. Todas as Anotação são posicionados numa posição de Page em um Rectangle e são adicionados através de: page.getAnnotations().add(annotation).
WidgetAnnotation
WidgetAnnotation representa um widget de formulário. A aparência é controlada através do AppearanceCharacteristics, que expõe a setBorder(), setBackground(), setRotate(), e 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 exibindo uma chamada de texto num local especificado. Aceita um DefaultAppearance para definir a fonte, o tamanho e a cor do texto de anotação.
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[][]) Estabelece uma linha de chamada com três pontos para a anotação. getIntent() retorna a anotação de FreeTextIntent valor.
Anotativas de marcação
HighlightAnnotation e a) UnderlineAnnotation Marcar espaços de texto com pontos quadrados. A Comissão getQuadPoints() método retorna uma matriz de 8 elementos definindo os quatro cantos da região marcada.
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");
}Anotativa de círculo e anotativo de cuidado
CircleAnnotation desenhar uma elipse no retângulo dado; CaretAnnotation marcas de identificação O texto é um ponto de inserção. Annotation e compartilham a mesma cor. propriedades fronteiriças.
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");
}Anotativas de aplanamento
Utilização: PdfAnnotationEditor.flattenAnnotations() para fundir todas as anotações no fluxo de conteúdo da página, tornando-os não editáveis.
try (PdfAnnotationEditor editor = new PdfAnnotationEditor()) {
editor.bindPdf("annotated.pdf");
editor.flattenAnnotations();
editor.save("flat.pdf");
}Remover anotações por tipo de texto
Chama-me . deleteAnnotations(type) com um nome de tipo de anotação para remover todas as anodações. do mesmo tipo, de cada página do documento vinculado:
try (PdfAnnotationEditor editor = new PdfAnnotationEditor()) {
editor.bindPdf("input.pdf");
editor.deleteAnnotations("Highlight");
editor.save("output.pdf");
}