Kerne Dokumenthåndtering

Kerne Dokumenthåndtering

Kerne Dokumenthåndtering

Document-klassen er hovedindgangspunktet for Aspose.PDF FOSS for .NET. Den implementerer IDisposable og bør bruges i en using-blok for at sikre, at alle ressourcer frigives hurtigt.


Oprettelse af et nyt PDF-dokument

Brug Document.Create() til at oprette et tomt PDF-dokument:

using Aspose.Pdf;
using var doc = Document.Create();
doc.Pages.Add();
doc.Save("new-document.pdf");

Alternativt kan du konstruere en Document-instans direkte med new Document():

using Aspose.Pdf;
using var doc = new Document();
doc.Pages.Add();
doc.Save("new-document.pdf");

Åbning af et eksisterende PDF-dokument

Document.Open accepterer en byte[], en filsti string, eller en Stream.

Åbn fra en byte array:

using Aspose.Pdf;
byte[] data = File.ReadAllBytes("input.pdf");
using var doc = Document.Open(data);
Console.WriteLine($"Pages: {doc.Pages.Count}");

Åbn fra en filsti:

using Aspose.Pdf;
using var doc = Document.Open("input.pdf");
Console.WriteLine($"Pages: {doc.Pages.Count}");

Åbn fra en Stream:

using Aspose.Pdf;
using var stream = File.OpenRead("input.pdf");
using var doc = Document.Open(stream);
Console.WriteLine($"Pages: {doc.Pages.Count}");

Åbning af en adgangskodebeskyttet PDF

Overfør adgangskoden som et andet argument til enhver Document.Open overload:

using Aspose.Pdf;
using var doc = Document.Open("protected.pdf", "mypassword");

Gemmer et dokument

Document.Save skriver det aktuelle dokument til en filsti eller strøm.
Document.ToArray returnerer de serialiserede bytes direkte.

Gem til en fil:

using Aspose.Pdf;
using var doc = Document.Open(File.ReadAllBytes("input.pdf"));
doc.Pages.Add();
doc.Save("output.pdf");

Gem round-trip til en MemoryStream (fra 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());

Serialiser til en byte-array:

using Aspose.Pdf;
using var doc = Document.Open(File.ReadAllBytes("input.pdf"));
var bytes = doc.ToArray();
File.WriteAllBytes("output.pdf", bytes);

Adgang til sider

Sider tilgås via Document.Pages, som er en 1-baseret PageCollection. Brug det heltalsindeks til at få 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}");

Adgang til formularen

Interaktive AcroForm-felter er tilgængelige via Document.Form. Tjek for null, før du får adgang, når dokumentet muligvis ikke indeholder en formular:

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ørelse af et dokument

Document implementerer IDisposable. Brug altid using eller kald Dispose() eksplicit:

using Aspose.Pdf;
using var doc = Document.Open("input.pdf");
// doc is disposed automatically at the end of the using block.

Se også

 Dansk