Kā pievienot anotācijas un veidlapas PDF .NET vidē
Kā pievienot anotācijas un veidlapas .NET
Šis ceļvedis parāda, kā pievienot anotācijas un interaktīvas veidlapas laukus PDF dokumentiem, izmantojot Aspose.PDF FOSS for .NET.
Priekšnosacījumi
| Prasība | Sīkā informācija |
|---|---|
| Izpildlaiks | .NET 8.0 vai jaunāks |
| Pakotne | dotnet add package Aspose.Pdf.Foss |
| Licence | MIT — nav nepieciešama licences atslēga |
1. solis: Pievienot teksta anotāciju
Teksta anotācijas parādās kā lipīgās piezīmes lapā. Norādiet aptverošu taisnstūri,
piezīmes saturu un autora nosaukumu. Iestatiet open: true, lai piezīme tiktu parādīta
izvērsta, kad dokuments tiek atvērts.
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");2. solis: Pievienot saites anotāciju
Saite anotācijas padara taisnstūrveida apgabalu klikšķināmu. Apvienojiet Rectangle ar PdfAction.CreateUri izsaukumu, lai, noklikšķinot, lietotāju novirzītu uz ārēju URL.
var action = PdfAction.CreateUri("https://aspose.com");
page.Annotations.AddLinkAnnotation(
new Rectangle(50, 700, 200, 720), action);3. solis: Pievienot izcēluma un formas anotācijas
Izcelšanas anotācijas atzīmē teksta apgabalus ar puscaurspīdīgu pārklājumu. Formas anotācijas, piemēram, kvadrāti un riņķi, zīmē ģeometriskus kontūrus lapā. Abas pieņem krāsu masīvus un izvēles līnijas platuma parametrus.
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);4. solis: Nolasīt veidlapas lauku vērtības
AcroForm lauki tiek piekļūti caur Document.Form. Iterējiet Form.Fields, lai nolasītu katra lauka nosaukumu un pašreizējo vērtību, nepārveidojot dokumentu.
using var doc = Document.Open(pdfBytes);
foreach (var field in doc.Form.Fields)
{
Console.WriteLine($"{field.FullName}: {field.Value}");
}5. solis: Apjaukt anotācijas
foreach (var annot in doc.Pages[1].Annotations)
{
annot.Flatten();
}
doc.Save("flattened.pdf");Svarīgas klases
| Klase | Mērķis |
|---|---|
AnnotationCollection | Pievienot un pārvaldīt lapas anotācijas |
LinkAnnotation | Hipersaites anotācija |
TextAnnotation | Piezīmju anotācija |
Form | AcroForm lauka piekļuve |
Field | Bāzes klase veidlapas laukiem |
PdfAction.CreateUri | Izveidot URI saites darbību |
AnnotationSelector | Filtrēt anotācijas pēc tipa |
Kļūdu novēršana
| Problēma | Risinājums |
|---|---|
| Anotācija nav redzama | Pārbaudiet, vai taisnstūra koordinātas ir lapas robežās |
| Saite URI ir null | Saite var izmantot GoTo darbību — pārbaudiet ActionType |
| Formas lauka vērtība ir tukša | Laukam var nebūt /V ieraksta — pārbaudiet lauka nosaukumu |