Kern-Dokumentenverwaltung

Kern-Dokumentenverwaltung

Kern‑Dokumentenverwaltung

Die Document-Klasse ist der Haupteinstiegspunkt für Aspose.PDF FOSS für .NET.
Sie implementiert IDisposable und sollte in einem using-Block verwendet werden, um sicherzustellen,
dass alle Ressourcen umgehend freigegeben werden.


Ein neues PDF-Dokument erstellen

Verwenden Sie Document.Create(), um ein leeres PDF‑Dokument zu instanziieren:

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

Alternativ können Sie eine Document‑Instanz direkt mit new Document() erstellen:

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

Öffnen eines vorhandenen PDF-Dokuments

Document.Open akzeptiert ein byte[], einen Dateipfad string oder ein Stream.

Aus einem Byte-Array öffnen:

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

Aus einem Dateipfad öffnen:

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

Öffnen aus einer Stream:

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

Öffnen einer passwortgeschützten PDF

Übergeben Sie das Passwort als zweites Argument an jede Document.Open Überladung:

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

Speichern eines Dokuments

Document.Save schreibt das aktuelle Dokument in einen Dateipfad oder Stream.
Document.ToArray gibt die serialisierten Bytes direkt zurück.

In einer Datei speichern:

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

Rundreise in einem MemoryStream speichern (aus 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());

Serialisieren in ein Byte-Array:

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

Zugriff auf Seiten

Seiten werden über Document.Pages zugegriffen, das ein 1‑basiertes PageCollection ist. Verwenden Sie den ganzzahligen Index, um ein bestimmtes Page zu erhalten:

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}");

Zugriff auf das Formular

Interaktive AcroForm‑Felder sind über Document.Form verfügbar. Überprüfen Sie null, bevor Sie darauf zugreifen, wenn das Dokument möglicherweise kein Formular enthält:

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}");
    }
}

Freigeben eines Dokuments

Document implementiert IDisposable. Verwenden Sie immer using oder rufen Sie Dispose() explizit auf:

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

Siehe auch

 Deutsch