Základní správa dokumentů
Základní správa dokumentů
Třída Document je hlavním vstupním bodem pro Aspose.PDF FOSS pro .NET.
Implementuje IDisposable a měla by být použita v bloku using, aby bylo zajištěno včasné uvolnění všech prostředků.
Vytvoření nového PDF dokumentu
Použijte Document.Create() k vytvoření prázdného PDF dokumentu:
using Aspose.Pdf;
using var doc = Document.Create();
doc.Pages.Add();
doc.Save("new-document.pdf");Alternativně vytvořte instanci Document přímo pomocí new Document():
using Aspose.Pdf;
using var doc = new Document();
doc.Pages.Add();
doc.Save("new-document.pdf");Otevírání existujícího PDF dokumentu
Document.Open přijímá byte[], cestu k souboru string nebo Stream.
Otevřít z pole bajtů:
using Aspose.Pdf;
byte[] data = File.ReadAllBytes("input.pdf");
using var doc = Document.Open(data);
Console.WriteLine($"Pages: {doc.Pages.Count}");Otevřít z cesty k souboru:
using Aspose.Pdf;
using var doc = Document.Open("input.pdf");
Console.WriteLine($"Pages: {doc.Pages.Count}");Otevřít z Stream:
using Aspose.Pdf;
using var stream = File.OpenRead("input.pdf");
using var doc = Document.Open(stream);
Console.WriteLine($"Pages: {doc.Pages.Count}");Otevření PDF chráněného heslem
Předávejte heslo jako druhý argument do libovolného přetížení Document.Open:
using Aspose.Pdf;
using var doc = Document.Open("protected.pdf", "mypassword");Ukládání dokumentu
Document.Save zapisuje aktuální dokument do cesty souboru nebo proudu.Document.ToArray vrací serializované bajty přímo.
Uložit do souboru:
using Aspose.Pdf;
using var doc = Document.Open(File.ReadAllBytes("input.pdf"));
doc.Pages.Add();
doc.Save("output.pdf");Uložit round-trip do MemoryStream (z 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());Serializovat do pole bajtů:
using Aspose.Pdf;
using var doc = Document.Open(File.ReadAllBytes("input.pdf"));
var bytes = doc.ToArray();
File.WriteAllBytes("output.pdf", bytes);Přístup ke stránkám
Stránky jsou přístupné přes Document.Pages, což je číslování od jedné PageCollection. Použijte celočíselný index k získání konkrétního 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}");Přístup k formuláři
Interaktivní pole AcroForm jsou k dispozici prostřednictvím Document.Form. Před přístupem zkontrolujte null, pokud dokument nemusí obsahovat formulář:
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}");
}
}Uvolnění dokumentu
Document implementuje IDisposable. Vždy používejte using nebo zavolejte Dispose() explicitně:
using Aspose.Pdf;
using var doc = Document.Open("input.pdf");
// doc is disposed automatically at the end of the using block.