Kärn Dokumenthantering
Kärn Dokumenthantering
Document-klassen är huvudinkörningspunkten för Aspose.PDF FOSS för .NET.
Den implementerar IDisposable och bör användas i ett using-block för att säkerställa
att alla resurser frigörs omedelbart.
Skapa ett nytt PDF-dokument
Använd Document.Create() för att instansiera ett tomt PDF‑dokument:
using Aspose.Pdf;
using var doc = Document.Create();
doc.Pages.Add();
doc.Save("new-document.pdf");Alternativt, konstruera en Document-instans direkt med new Document():
using Aspose.Pdf;
using var doc = new Document();
doc.Pages.Add();
doc.Save("new-document.pdf");Öppna ett befintligt PDF-dokument
Document.Open accepterar en byte[], en filväg string, eller en Stream.
Öppna från en bytearray:
using Aspose.Pdf;
byte[] data = File.ReadAllBytes("input.pdf");
using var doc = Document.Open(data);
Console.WriteLine($"Pages: {doc.Pages.Count}");Öppna från en filväg:
using Aspose.Pdf;
using var doc = Document.Open("input.pdf");
Console.WriteLine($"Pages: {doc.Pages.Count}");Öppna från en Stream:
using Aspose.Pdf;
using var stream = File.OpenRead("input.pdf");
using var doc = Document.Open(stream);
Console.WriteLine($"Pages: {doc.Pages.Count}");Öppna ett lösenordsskyddat PDF
Skicka lösenordet som ett andra argument till någon Document.Open‑överladdning:
using Aspose.Pdf;
using var doc = Document.Open("protected.pdf", "mypassword");Sparar ett dokument
Document.Save skriver det aktuella dokumentet till en filsökväg eller ström.Document.ToArray returnerar de serialiserade byten direkt.
Spara till en fil:
using Aspose.Pdf;
using var doc = Document.Open(File.ReadAllBytes("input.pdf"));
doc.Pages.Add();
doc.Save("output.pdf");Spara rundresa till en MemoryStream (från 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());Serialisera till en bytearray:
using Aspose.Pdf;
using var doc = Document.Open(File.ReadAllBytes("input.pdf"));
var bytes = doc.ToArray();
File.WriteAllBytes("output.pdf", bytes);Åtkomst till sidor
Sidor nås via Document.Pages, vilket är en 1‑baserad PageCollection. Använd det heltalsindexet för att hämta en specifik 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}");Åtkomst till formuläret
Interaktiva AcroForm-fält är tillgängliga via Document.Form. Kontrollera null innan åtkomst när dokumentet kanske inte innehåller ett formulär:
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}");
}
}Frigöra ett dokument
Document implementerar IDisposable. Använd alltid using eller anropa Dispose()
explicit:
using Aspose.Pdf;
using var doc = Document.Open("input.pdf");
// doc is disposed automatically at the end of the using block.