핵심 문서 관리

핵심 문서 관리

핵심 문서 관리

Document 클래스는 Aspose.PDF FOSS for .NET의 주요 진입점입니다. IDisposable을 구현하며, 모든 리소스가 즉시 해제되도록 using 블록에서 사용해야 합니다.


새 PDF 문서 만들기

Document.Create()를 사용하여 빈 PDF 문서를 인스턴스화합니다:

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

또는 Document 인스턴스를 new Document() 로 직접 구성하십시오:

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

기존 PDF 문서 열기

Document.Openbyte[], 파일 경로 string 또는 Stream을 허용합니다.

바이트 배열에서 열기:

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

파일 경로에서 열기:

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

Stream에서 열기:

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

비밀번호로 보호된 PDF 열기

비밀번호를 두 번째 인수로 모든 Document.Open 오버로드에 전달하십시오:

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

문서 저장

Document.Save 현재 문서를 파일 경로나 스트림에 씁니다.
Document.ToArray 직렬화된 바이트를 직접 반환합니다.

파일에 저장:

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

MemoryStream에 대한 라운드 트립 저장 (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());

바이트 배열로 직렬화:

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

페이지에 액세스

Document.Pages을 통해 페이지에 액세스하며, 이는 1 기반
PageCollection입니다. 정수 인덱스를 사용하여 특정 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}");

양식에 액세스하기

대화형 AcroForm 필드는 Document.Form을 통해 사용할 수 있습니다. 문서에 양식이 없을 수 있는 경우 액세스하기 전에 null을 확인하십시오:

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

문서 폐기

DocumentIDisposable를 구현합니다. 항상 using를 사용하거나 Dispose()를 명시적으로 호출하십시오:

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

또 보기

 한국어