Pagrindinis dokumentų valdymas
Pagrindinis dokumentų valdymas
Document klasė yra pagrindinis įėjimo taškas Aspose.PDF FOSS for .NET. Ji įgyvendina IDisposable ir turėtų būti naudojama using bloke, kad būtų užtikrinta, jog visi ištekliai būtų greitai atlaisvinti.
Kuriamas naujas PDF dokumentas
Naudokite Document.Create(), kad sukurtumėte tuščią PDF dokumentą:
using Aspose.Pdf;
using var doc = Document.Create();
doc.Pages.Add();
doc.Save("new-document.pdf");Alternatyviai, sukurkite Document egzempliorių tiesiogiai su new Document():
using Aspose.Pdf;
using var doc = new Document();
doc.Pages.Add();
doc.Save("new-document.pdf");Esamo PDF dokumento atidarymas
Document.Open priima byte[], failo kelią string arba Stream.
Atidaryti iš baitų masyvo:
using Aspose.Pdf;
byte[] data = File.ReadAllBytes("input.pdf");
using var doc = Document.Open(data);
Console.WriteLine($"Pages: {doc.Pages.Count}");Atidaryti iš failo kelio:
using Aspose.Pdf;
using var doc = Document.Open("input.pdf");
Console.WriteLine($"Pages: {doc.Pages.Count}");Atidaryti iš Stream:
using Aspose.Pdf;
using var stream = File.OpenRead("input.pdf");
using var doc = Document.Open(stream);
Console.WriteLine($"Pages: {doc.Pages.Count}");PDF su slaptažodžiu atidarymas
Perduokite slaptažodį kaip antrą argumentą bet kuriam Document.Open perkrovimui:
using Aspose.Pdf;
using var doc = Document.Open("protected.pdf", "mypassword");Dokumento išsaugojimas
Document.Save įrašo dabartinį dokumentą į failo kelią arba srautą.Document.ToArray grąžina serializuotus baitus tiesiogiai.
Išsaugoti į failą:
using Aspose.Pdf;
using var doc = Document.Open(File.ReadAllBytes("input.pdf"));
doc.Pages.Add();
doc.Save("output.pdf");Išsaugoti round‑trip į MemoryStream (iš snippet_014.cs):
using Aspose.Pdf;
var data = File.ReadAllBytes("input.pdf");
using var doc = Document.Open(data);
var page = doc.Pages[1];
var action = PdfAction.CreateJavaScript("app.alert('Round trip');");
page.Annotations.AddLinkAnnotation(new Rectangle(50, 600, 200, 620), action);
using var ms = new MemoryStream();
doc.Save(ms);
ms.Position = 0;
using var doc2 = Document.Open(ms.ToArray());Serializuoti į baitų masyvą:
using Aspose.Pdf;
using var doc = Document.Open(File.ReadAllBytes("input.pdf"));
var bytes = doc.ToArray();
File.WriteAllBytes("output.pdf", bytes);Puslapių pasiekimas
Puslapiai pasiekiami per Document.Pages, kuris yra 1‑indeksuotas PageCollection. Naudokite sveikąjį indeksą norėdami gauti konkretų Page:
using Aspose.Pdf;
using var doc = Document.Open(File.ReadAllBytes("input.pdf"));
var page = doc.Pages[1];
Console.WriteLine($"Width: {page.Width}, Height: {page.Height}");
Console.WriteLine($"Rotation: {page.RotateDegrees}");
Console.WriteLine($"Annotations: {page.Annotations.Count}");Prieiga prie formos
Interaktyvūs AcroForm laukai yra prieinami per Document.Form. Patikrinkite null prieš prieigą, kai dokumentas gali neturėti formos:
using Aspose.Pdf;
using var doc = Document.Open(File.ReadAllBytes("form.pdf"));
if (doc.Form is not null)
{
foreach (var field in doc.Form.Fields)
{
Console.WriteLine($"{field.Name}: {field.Value}");
}
}Dokumento išlaisvinimas
Document įgyvendina IDisposable. Visada naudokite using arba iškvieskite Dispose() aiškiai:
using Aspose.Pdf;
using var doc = Document.Open("input.pdf");
// doc is disposed automatically at the end of the using block.