Gestão de documentos fundamentais
Gestão de documentos fundamentais
A Comissão Document classe é o ponto de entrada principal para Aspose.PDF FOSS for .NET. Implementa a Comissão. IDisposable e deve ser utilizado numa using bloqueio para assegurar Todos os recursos são liberados prontamente.
Criar um novo documento PDF
Utilização: Document.Create() para instanciar um documento PDF vazio:
using Aspose.Pdf;
using var doc = Document.Create();
doc.Pages.Add();
doc.Save("new-document.pdf");Em alternativa, construam um sistema de Document instância directamente com o new Document():
using Aspose.Pdf;
using var doc = new Document();
doc.Pages.Add();
doc.Save("new-document.pdf");Abrir um documento PDF existente
Document.Open aceita um byte[], um caminho de arquivo string, ou a Stream.
Abrir a partir de um array byte:
using Aspose.Pdf;
byte[] data = File.ReadAllBytes("input.pdf");
using var doc = Document.Open(data);
Console.WriteLine($"Pages: {doc.Pages.Count}");Abrir a partir de um caminho de arquivo:
using Aspose.Pdf;
using var doc = Document.Open("input.pdf");
Console.WriteLine($"Pages: {doc.Pages.Count}");Abrir a partir de um Stream:
using Aspose.Pdf;
using var stream = File.OpenRead("input.pdf");
using var doc = Document.Open(stream);
Console.WriteLine($"Pages: {doc.Pages.Count}");Abrir um PDF protegido por senha
Passe a senha como segundo argumento para qualquer Document.Open sobrecarga:
using Aspose.Pdf;
using var doc = Document.Open("protected.pdf", "mypassword");Salvar um documento
Document.Save escreve o documento atual para um caminho de arquivo ou fluxo. Document.ToArray Retorna os bytes serializados diretamente.
Salvar para um ficheiro:
using Aspose.Pdf;
using var doc = Document.Open(File.ReadAllBytes("input.pdf"));
doc.Pages.Add();
doc.Save("output.pdf");Salvar ida e volta para um MemoryStream (from 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());Serializar para uma matriz de bytes:
using Aspose.Pdf;
using var doc = Document.Open(File.ReadAllBytes("input.pdf"));
var bytes = doc.ToArray();
File.WriteAllBytes("output.pdf", bytes);Acesso a páginas
As páginas são acessadas através de: Document.Pages, que é uma baseada em 1 . PageCollection.Use o índice de inteiros para obter um específico 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}");Acesso ao formulário
Os campos interativos do AcroForm estão disponíveis através da página Web www.acroforms.org/en/ Document.Form.Verifique se há … null Antes de aceder, quando o documento não conter um formulário:
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}");
}
}Disposição de um documento
Document instrumentos de trabalho IDisposable.- Sempre use . using ou ligar. Dispose() explicitamente:
using Aspose.Pdf;
using var doc = Document.Open("input.pdf");
// doc is disposed automatically at the end of the using block.