Gestionarea Documentelor de Bază

Gestionarea Documentelor de Bază

Gestionarea Documentelor de Bază

Clasa Document este punctul principal de intrare pentru Aspose.PDF FOSS pentru .NET.
Aceasta implementează IDisposable și ar trebui utilizată într-un bloc using pentru a asigura
eliberarea rapidă a tuturor resurselor.


Crearea unui document PDF nou

Utilizaţi Document.Create() pentru a crea un document PDF gol:

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

Alternativ, construiți o instanță Document direct cu new Document():

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

Deschiderea unui document PDF existent

Document.Open acceptă un byte[], o cale de fișier string sau un Stream.

Deschide dintr-un tablou de octeţi:

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

Deschide dintr-o cale de fișier:

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

Deschide dintr-un Stream:

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

Deschiderea unui PDF protejat prin parolă

Transmiteți parola ca al doilea argument la orice suprasarcină Document.Open:

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

Salvarea unui document

Document.Save scrie documentul curent într-o cale de fișier sau flux.
Document.ToArray returnează direct octeții serializați.

Salvează într-un fișier:

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

Salvează round-trip către un MemoryStream (din 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());

Serializați într-un tablou de octeţi:

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

Accesarea paginilor

Paginile sunt accesate prin Document.Pages, care este un 1‑bazat
PageCollection. Folosiți indexul întreg pentru a obține un Page specific:

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

Accesarea formularului

Câmpurile interactive AcroForm sunt disponibile prin Document.Form. Verificați null înainte de a accesa când documentul poate să nu conțină un 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}");
    }
}

Eliberarea unui document

Document implementează IDisposable. Folosiți întotdeauna using sau apelați Dispose() explicit:

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

Vezi și

 Română