Sådan tilføjer du annotationer og formularer til PDF i .NET

Sådan tilføjer du annotationer og formularer til PDF i .NET

Sådan tilføjer du annotationer og formularer i .NET

Denne vejledning viser, hvordan man tilføjer annotationer og interaktive formularfelter til PDF-dokumenter ved hjælp af Aspose.PDF FOSS for .NET.


Forudsætninger

KravDetalje
Kørselstid.NET 8.0 eller senere
Pakkedotnet add package Aspose.Pdf.Foss
LicensMIT — ingen licensnøgle påkrævet

Trin 1: Tilføj en tekstannotation

Tekstkommentarer vises som post‑it‑noter på siden. Angiv en afgrænsende rektangel, notens indhold og en forfattertitel. Indstil open: true til at vise noten udvidet, når dokumentet åbnes.

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

Trin 2: Tilføj en linkannotation

Linkannotationer gør et rektangulært område klikbart. Kombinér en Rectangle med et PdfAction.CreateUri‑kald for at navigere brugeren til en ekstern URL, når der klikkes.

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

Trin 3: Tilføj fremhævnings- og formannoteringer

Highlight‑annoteringer marker tekstområder med et gennemsigtigt overlay. Form‑annoteringer såsom firkanter og cirkler tegner geometriske konturer på siden. Begge accepterer farvearrays og valgfrie linjebreddesparametre.

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

Trin 4: Læs formularfelternes værdier

AcroForm-felter tilgås via Document.Form. Iterer Form.Fields for at læse hvert felts navn og aktuelle værdi uden at ændre dokumentet.

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

Trin 5: Fladgør annotationer

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

Nøgleklasser

KlasseFormål
AnnotationCollectionTilføj og administrer sideannoteringer
LinkAnnotationHyperlink-annotering
TextAnnotationPost-it-annotering
FormAcroForm-feltadgang
FieldBasisklasse for formularfelter
PdfAction.CreateUriOpret URI-linkhandling
AnnotationSelectorFiltrer annoteringer efter type

Fejlfinding

ProblemLøsning
Annotation er ikke synligKontroller, at rektangelkoordinaterne er inden for sidens grænser
Link-URI er nullLinket kan bruge en GoTo-handling — tjek ActionType
Formularfeltværdi er tomFeltet har muligvis ikke en /V‑indgang — bekræft feltnavnet

Se også

 Dansk