Ako pridať anotácie a formuláre do PDF v .NET
Ako pridať anotácie a formuláre v .NET
Tento sprievodca ukazuje, ako pridať anotácie a interaktívne formulárové polia do PDF dokumentov pomocou Aspose.PDF FOSS pre .NET.
Požiadavky
| Requirement | Detail |
|---|---|
| Runtime | .NET 8.0 alebo novší |
| Package | dotnet add package Aspose.Pdf.Foss |
| License | MIT — nie je potrebný licenčný kľúč |
Krok 1: Pridať textovú anotáciu
Textové anotácie sa zobrazujú ako lepiace poznámky na stránke. Zadajte ohraničujúci obdĺžnik, obsah poznámky a titul autora. Nastavte open: true tak, aby sa poznámka zobrazila rozbalená pri otvorení dokumentu.
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");Krok 2: Pridať anotáciu odkazu
Anotácie odkazov robia obdĺžnikovú oblasť klikateľnou. Skombinujte Rectangle s volaním PdfAction.CreateUri, aby ste po kliknutí navigovali používateľa na externú URL.
var action = PdfAction.CreateUri("https://aspose.com");
page.Annotations.AddLinkAnnotation(
new Rectangle(50, 700, 200, 720), action);Krok 3: Pridať zvýrazňovacie a tvarové anotácie
Zvýrazňovacie anotácie označujú textové oblasti priesvitným prekrytím.
Tvarové
anotácie, ako štvorce a kruhy, kreslia geometrické obrysy na stránke.
Obe akceptujú polia farieb a voliteľné parametre šírky čiary.
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);Krok 4: Prečítajte hodnoty polí formulára
Polia AcroForm sa pristupuje cez Document.Form. Iterujte Form.Fields na prečítanie názvu každého poľa a jeho aktuálnej hodnoty bez úpravy dokumentu.
using var doc = Document.Open(pdfBytes);
foreach (var field in doc.Form.Fields)
{
Console.WriteLine($"{field.FullName}: {field.Value}");
}Krok 5: Zploštiť anotácie
foreach (var annot in doc.Pages[1].Annotations)
{
annot.Flatten();
}
doc.Save("flattened.pdf");Kľúčové triedy
| Trieda | Účel |
|---|---|
AnnotationCollection | Pridať a spravovať anotácie na stránke |
LinkAnnotation | Anotácia hypertextového odkazu |
TextAnnotation | Anotácia poznámky lepiacej |
Form | Prístup k poľu AcroForm |
Field | Základná trieda pre polia formulára |
PdfAction.CreateUri | Vytvoriť akciu odkazu URI |
AnnotationSelector | Filtrovať anotácie podľa typu |
Riešenie problémov
| Problém | Riešenie |
|---|---|
| Poznámka nie je viditeľná | Skontrolujte, či sú súradnice obdĺžnika v rámci hraníc stránky |
| URI odkazu je null | Odkaz môže používať akciu GoTo — skontrolujte ActionType |
| Hodnota poľa formulára je prázdna | Pole nemusí mať záznam /V — overte názov poľa |