이 페이지에는 자동 번역된 텍스트가 포함될 수 있습니다.

PDF 생성을 위한 .NET 라이브러리

필요한 만큼 복잡하거나 간단한 PDF 파일을 생성할 수 있는 레이아웃 API를 사용하여 PDF 문서를 생성하세요. Fluent API를 사용하여 코드에서 문서의 레이아웃을 설명합니다. 페이징을 지원하는 강력한 C# PDF 생성기가 나머지 작업을 수행합니다.

완벽한 문서를 얻으려면 구조적 요소를 C# 또는 VB.NET 코드의 빌딩 블록으로 사용하세요. 요소는 페이지, 컨테이너, 표, 단락, 이미지, 링크 등입니다. 라이브러리는 문서 내용을 자동으로 페이지로 나눕니다. 페이지 머리글과 바닥글을 추가할 수 있습니다. API는 재사용 가능한 사용자 정의 구성 요소를 지원합니다. Layout API는 목차나 워터마크와 같은 내장 구성요소를 제공합니다.

PDF 생성 라이브러리

레이아웃 API는 Docotic.Pdf 라이브러리의 무료 추가 기능으로 제공됩니다. 라이브러리와 추가 기능은 모두 100% 관리 코드 DLL입니다. 타사 외부 종속성이 없습니다. API를 사용하여 Windows, Linux, Amazon 및 Azure 클라우드 환경에서 PDF 문서를 만들 수 있습니다. macOS, iOS, Android도 괜찮습니다.

Docotic.Pdf 및 Layout 추가 기능은 NuGet 및 당사 사이트에서 사용할 수 있습니다. 평가 모드 제한 없이 라이브러리를 사용해 보려면 라이브러리 페이지에서 시간 제한이 있는 무료 라이센스 키를 받으세요.

Docotic.Pdf 라이브러리 9.4.17342 레이아웃 애드온 9.4.17342
회귀 테스트 14,727건의 테스트 통과 총 NuGet 다운로드 4,260,602

PDF를 생성하는 Fluent API

추가 기능은 유창한 API를 제공합니다. 대부분의 통화를 함께 연결할 수 있습니다. 이는 "선언적" 프레임워크보다 더 간결한 코드로 이어집니다. 그리고 코드 개발에 대한 모든 일반적인 접근 방식을 계속 사용할 수 있습니다. 예를 들어 도우미 클래스 및 메서드의 재사용 가능한 부분을 사용하여 레이아웃 구현을 더욱 간결하게 만들 수 있습니다.

C#에서 PDF 문서를 만드는 방법

이제 몇 가지 예를 들어볼 차례입니다.

안녕하세요, PDF입니다!

다음은 Layout API를 사용하여 C#에서 PDF를 생성하는 방법을 보여주는 간단한 예입니다. 두 페이지로 구성된 문서를 만듭니다. 일종의 합성이지만 API가 작동하는 방식을 보여줍니다.

PdfDocumentBuilder.Create().Generate("pages.pdf", doc =>
{
    doc.Pages((PageLayout page) =>
    {
        page.Size(PdfPaperSize.A5);

        page.Header().PaddingTop(70).AlignCenter().Text("Hello, PDF!");

        page.Content().Column(c =>
        {
            for (int i = 0; i < 10; i++)
                c.Item().AlignCenter().Text($"Page 1 block {i + 1}");

            c.Item().PageBreak();
            c.Item().Text("Page 2");
        });

        page.Footer().Text(t => t.CurrentPageNumber());
    });
});

PdfDocumentBuilder.Generate 메서드Document 클래스의 인스턴스를 제공합니다. 개체와 해당 Pages 메서드를 사용하면 하나 이상의 페이지에 대한 레이아웃을 정의할 수 있습니다.

샘플 코드는 페이지 크기를 설정하고 Header, ContentFooter 슬롯의 내용을 설명합니다. 이러한 슬롯은 모두 동일한 LayoutContainer 유형을 갖습니다. LayoutContainer는 레이아웃 API의 핵심 구성 요소입니다. 컨테이너를 사용하면 임의의 레이아웃을 생성할 수 있습니다.

레이아웃 엔진은 모든 데이터를 포함하는 페이지를 생성합니다. 정확한 수는 PageLayout.Content의 콘텐츠와 기타 슬롯에 따라 다릅니다. 라이브러리는 모든 페이지에서 HeaderFooter 슬롯의 내용을 반복합니다. 모든 페이지의 크기는 동일합니다.

레이아웃이나 크기가 다른 페이지를 가지려면 Pages 메서드를 두 번 이상 호출하세요.

C#에서 텍스트 PDF 만들기

일반적인 작업은 텍스트 문자열을 PDF 파일로 변환하는 것입니다. 다음 코드는 레이아웃 API를 사용하여 C#의 텍스트 파일에서 PDF 문서를 만듭니다.

PdfDocumentBuilder
    .Create()
    .Generate("long-text.pdf", doc => doc.Pages(page =>
    {
        string text = File.ReadAllText(@"PDF_Succinctly.txt");
        page.Content().Text(text);
    }));

코드는 파일의 모든 텍스트를 읽고 Content 슬롯에 사용합니다. 크기를 계산하거나 텍스트 문자열을 덩어리로 나눌 필요가 없습니다. Layout 추가 기능은 이러한 모든 작업을 처리합니다. API를 사용하면 C# 코드에서 텍스트를 PDF로 쉽게 변환할 수 있습니다.

.NET에서 PDF 암호화

암호화된 PDF를 생성하려면 다음 C# 코드 예제와 같은 암호화 처리기를 사용합니다.

PdfDocumentBuilder
    .Create()
    .Encryption(new PdfStandardEncryptionHandler("owner", "user"))
    .Generate("encrypted-with-password.pdf", doc => doc.Pages(page =>
    {
        // 여기에 페이지 콘텐츠를 배치하세요.
    }));

라이브러리는 사용자 및 소유자 비밀번호로 암호화된 PDF를 생성합니다. 암호화된 문서의 사용자에 대해서는 PDF 권한 지정이 가능합니다. 인증서로 PDF를 보호할 수도 있습니다.

추가 읽기

Layout API는 C#에서 PDF를 생성할 수 있는 다양한 수단을 제공합니다. 다음 기사에서 이에 대해 읽어 보시기 바랍니다.