Com afegir anotacions i formularis al PDF en .NET

Com afegir anotacions i formularis al PDF en .NET

Com afegir anotacions i formularis en .NET

Aquesta guia mostra com afegir anotacions i camps de formulari interactiu als documents PDF utilitzant Aspose.PDF FOSS per a .NET.


Prerequisites

RequirementDetail
Runtime.NET 8.0 o més tard.
Packagedotnet add package Aspose.Pdf.Foss
LicenseMIT no es requereix clau de llicència

Pas 1: Agregar una anotació de text

Les anotacions de text apareixen com a notes en la pàgina. Fornir un rectangle que limita, El contingut de la nota, i un títol d’autor. open: true per mostrar la nota expandit quan s’obre el document.

using var doc = Document.Open(File.ReadAllBytes("input.pdf"));
var page = doc.Pages[1];

page.Annotations.AddTextAnnotation(
    new Rectangle(72, 720, 200, 740),
    contents: "Review this section",
    title: "Editor",
    open: true);

doc.Save("annotated.pdf");

Pas 2: Afegir una anotació de enllaç

Les anotacions de enllaç fan que un àrea rectangular sigui clicable. Combinar una Rectangle amb una PdfAction.CreateUri crida per navegar l’usuari cap a una URL externa quan es fa clic.

var action = PdfAction.CreateUri("https://aspose.com");
page.Annotations.AddLinkAnnotation(
    new Rectangle(50, 700, 200, 720), action);

Pas 3: Agregar notacions de forma i destacament

Les anotacions de forma com els quadrats i cercles dibuixen contorns geomètrics a la pàgina. Ambdues accepten matrius de color i paràmetres opcionals d’amplada de línia.

page.Annotations.AddHighlightAnnotation(
    new Rectangle(72, 680, 300, 700),
    quadPoints: null,
    color: new double[] { 1, 1, 0 });

page.Annotations.AddSquareAnnotation(
    new Rectangle(72, 640, 200, 680),
    borderColor: new double[] { 0, 0, 1 },
    fillColor: null,
    lineWidth: 1.5);

Pas 4: Llegir els valors dels camps del formulari

Els camps d’AcroForm s’acessen a través de: Document.Form.Iterat. Form.Fields a la llegir el nom de cada camp i valor actual sense modificar el document.

using var doc = Document.Open(pdfBytes);
foreach (var field in doc.Form.Fields)
{
    Console.WriteLine($"{field.FullName}: {field.Value}");
}

Pas 5: Anotades planes

foreach (var annot in doc.Pages[1].Annotations)
{
    annot.Flatten();
}
doc.Save("flattened.pdf");

Classes clau

ClassPurpose
AnnotationCollectionAgregar i gestionar anotacions de pàgines
LinkAnnotationAnotatiu d’hipervincle
TextAnnotationAnotatiu en nota adherida
FormAccés al camp de l’acroformulari
FieldClasse de base per als camps del formulari
PdfAction.CreateUriCreació d’accions de enllaç URI
AnnotationSelectorAnotades de filtre per tipus

Troubleshooting

ProblemSolution
No visibleComproveu que les coordenades del rectangle estiguin dins dels límits de la pàgina.
L’ URI del enllaç és nul·la.El enllaç pot utilitzar una acció GoTo comprovació ActionType
Valor del camp de formulari buitEl camp pot no tenir una /V Entrada verificar nom del camp

See Also

 Català