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

코어 API를 사용하여 PDF 생성

Docotic.Pdf의 핵심 API는 PDF 생성에 대한 완벽한 제어 기능을 제공합니다. PDF 페이지, XObject, 타일링 패턴에서 제공하는 캔버스에 텍스트, 이미지, 벡터 그래픽을 그릴 수 있습니다.

모든 좌표와 그리기 작업을 직접 제어할 수 있으므로 PDF 페이지 레이아웃을 최대한 자유롭게 구성할 수 있습니다. 그래픽이 많거나 사용자 지정 레이아웃이 필요한 문서의 경우, 이러한 수준의 제어 기능은 필수적입니다.

핵심 API를 사용하면 생성된 PDF에 주석, 폼 필드, 레이어, 책갈피 등을 추가할 수도 있습니다. 이 API는 Docotic.Pdf에서 제공하는 .NET 환경에서 PDF를 생성하는 가장 유연하고 강력한 방법입니다.

PDF 생성을 위한 핵심 API 기능들을 보여주는 그림으로, 벡터 그래픽, 이미지 배치 및 텍스트 그리기를 나타냅니다.

Docotic.Pdf에서 사용할 수 있는 모든 접근 방식(핵심 API 외의 방식 포함)에 대한 더 자세한 개요를 보려면 PDF를 생성하는 모든 방법을 설명하는 문서를 참조하세요.

시작하기 전에

Core API를 사용하기 전에 Docotic.Pdf를 설치하고 라이선스 키를 요청하여 환경을 설정하십시오.

Docotic.Pdf를 설치하세요

C# 또는 VB.NET으로 PDF 문서를 생성하려면 먼저 NuGet에서 라이브러리를 설치하세요.

Install-Package BitMiracle.Docotic.Pdf

라이브러리를 수동으로 설치하려면 라이브러리 바이너리가 포함된 ZIP 아카이브를 다운로드하고 압축을 푼 다음 프로젝트에서 BitMiracle.Docotic.Pdf.dll에 대한 참조를 추가하십시오.

라이선스 키를 받으세요

라이브러리를 사용하려면 라이선스 키가 필요합니다. 라이브러리를 체험해 보시려면 Docotic.Pdf 다운로드 페이지에서 양식을 작성하여 무료 기간 한정 라이선스 키를 요청하세요.

기본 PDF 생성 예시

이 섹션에서는 Core API를 사용하여 PDF 문서를 생성하는 방법을 보여주는 기본 예제를 C#과 VB.NET을 사용하여 제공합니다.

C#으로 PDF를 만드는 방법

Docotic.Pdf를 설치하고 라이선스 키를 발급받으셨으므로 이제 Core API를 사용하여 PDF를 쉽게 생성할 수 있습니다.

BitMiracle.Docotic.LicenseManager.AddLicenseData("PUT-LICENSE-HERE");

using var pdf = new PdfDocument();
pdf.Save("empty.pdf");

이 코드는 빈 PDF 파일을 생성하는 방법을 보여줍니다. 첫 번째 줄은 라이선스 키를 추가합니다. 라이선스가 없으면 PdfDocument 인스턴스를 생성하는 줄에서 예외가 발생합니다. 마지막 줄은 문서를 PDF 파일로 저장합니다.

생성된 파일의 내부 구조는 저장 옵션에 따라 달라집니다. 이 예제에서는 기본 옵션으로 저장하는 Save 메서드 오버로드를 사용합니다. 이러한 기본값의 기능과 설정을 조정해야 하는 시점에 대한 자세한 내용은 저장 옵션 섹션을 참조하십시오.

프로그래밍 전통에 따라 두 번째 예제는 Core API를 사용하여 "Hello, world!"를 생성하는 방법을 보여줍니다.

using var pdf = new PdfDocument();

var page = pdf.Pages[0];
page.Canvas.DrawString(50, 50, "Hello, world!");

pdf.Save("hello.pdf");

이 코드는 문서의 첫 페이지 캔버스에 명시적으로 지정된 위치부터 해당 문구를 배치합니다. 기본 글꼴과 기본 글꼴 크기를 사용합니다. PDF 캔버스 작업에 대한 자세한 내용은 계속 읽어보세요.

VB.NET을 사용하여 PDF 생성하기

PDF를 생성하는 VB.NET 코드는 이전 섹션의 코드와 매우 유사합니다.

Using pdf As New PdfDocument()
    Dim page = pdf.Pages(0)
    page.Canvas.DrawString(50, 50, "Hello, world!")

    pdf.Save("hello.pdf")
End Using

이전 섹션에서는 C# 예제를 포함하여 코드의 기능과 작동 방식을 설명했습니다.

PDF 캔버스 작업하기

PDF 문서의 캔버스를 변경하려면 캔버스 API를 사용하세요. 이는 코어 API의 하위 집합입니다.

캔버스 API는 절대 위치 지정 모델을 사용합니다. 좌표를 지정하면 캔버스가 지정된 위치에 정확하게 그려집니다. 좌표계는 페이지의 왼쪽 상단 모서리를 원점으로 합니다. 좌표는 X축을 따라 오른쪽으로 갈수록 증가하고 Y축을 따라 아래쪽으로 갈수록 증가합니다.

(0,0) ──► X
  │
  │
  ▼
  Y

그림 텍스트

Docotic.Pdf의 PdfCanvas 클래스는 텍스트를 렌더링하는 두 가지 주요 메서드인 DrawStringDrawText를 제공합니다. 두 메서드 모두 현재 캔버스의 글꼴을 사용하므로 텍스트를 그리기 전에 필요한 글꼴을 설정하는 것이 좋습니다.

DrawString을 사용하기

DrawString 메서드는 항상 한 줄의 텍스트를 그립니다. 명시적인 좌표를 사용하는 오버로드를 사용하지 않는 한, 이 메서드는 캔버스의 현재 텍스트 위치에서 그리기를 시작합니다. 일부 오버로드에서는 텍스트 줄을 그리는 방식을 제어하는 ​​추가 옵션을 지정할 수 있습니다.

이미 Hello, world! 코드 조각에서 DrawString의 간단한 예제를 보셨습니다. 다음은 텍스트에 밑줄을 긋는 데 문자열 그리기 옵션을 사용하는 또 다른 예제입니다.

using var pdf = new PdfDocument();

var canvas = pdf.Pages[0].Canvas;
canvas.DrawString(50, 50, "This text is underlined", new PdfStringDrawingOptions
{
    Underline = true,
});

pdf.Save("underlined-text.pdf");

DrawText를 사용하기

DrawText 메서드는 지정된 사각형 영역 내에 여러 줄의 텍스트를 렌더링할 수 있습니다. 이 메서드는 줄 바꿈을 처리하고 허용된 공간에 맞지 않는 텍스트는 잘라냅니다. 텍스트 그리기 옵션은 텍스트의 가로 및 세로 정렬을 비롯하여 텍스트의 위치 지정 및 렌더링 방식에 대한 다양한 측면을 정의합니다.

다음은 C#을 사용하여 PDF에 텍스트를 그리는 방법입니다.

using var pdf = new PdfDocument();

const string LongString = "Lorem ipsum dolor sit amet, consectetur adipisicing elit";
var multiLineOptions = new PdfTextDrawingOptions(new PdfRectangle(70, 70, 40, 150))
{
    HorizontalAlignment = PdfTextAlign.Left,
    VerticalAlignment = PdfVerticalAlign.Top
};

var canvas = pdf.Pages[0].Canvas;
canvas.DrawText(LongString, multiLineOptions);

pdf.Save("drawtext.pdf");

텍스트 모양을 세밀하게 조정하려면 다음 캔버스 속성을 조정할 수 있습니다.

  • 문자 간격
  • 단어 간격
  • 텍스트 크기 조정
  • 텍스트 높이 조정(기준선 이동)
  • 렌더링 모드(채우기, 테두리, 채우기 및 테두리 등)

텍스트 관련 메서드 및 속성에 대한 실제 예제는 텍스트 샘플 그룹을 참조하십시오.

글꼴 추가 및 사용

기본 Helvetica 글꼴이 괜찮지 않다면, 텍스트가 의도한 대로 정확하게 표시되도록 필요한 글꼴을 PDF에 추가해야 합니다.

Docotic.Pdf는 다음 소스에서 Type1, TrueType, CFF(Compact Font Format) 및 OpenType 글꼴을 추가할 수 있습니다.

  • 시스템에 설치된 글꼴 모음
  • 외부 파일 및 스트림

또한 모든 PDF 뷰어에서 사용할 수 있는 14개의 내장 Type1 글꼴을 사용할 수도 있습니다.

PDF에서 글꼴을 사용하려면 해당 PdfDocument 객체의 CreateFont 또는 CreateFontFromFile 메서드를 사용하여 PdfFont 객체를 생성합니다. 그런 다음 텍스트를 그리기 전에 캔버스에 글꼴을 할당합니다. 글꼴 크기를 설정하는 것도 좋습니다.

using var pdf = new PdfDocument();
var canvas = pdf.Pages[0].Canvas;

var font = pdf.CreateFont("NSimSun");
canvas.Font = font;
canvas.FontSize = 14;
canvas.DrawString(10, 50, "Olá. 你好. Hello, Unicode!");

font.RemoveUnusedGlyphs();

pdf.Save("unicode-text.pdf");

글꼴에는 표시하려는 텍스트의 모든 문자에 대한 글리프가 포함되어 있어야 합니다. 그렇지 않으면 CannotShowTextException 오류가 발생합니다. PdfFont.ContainsGlyphsForText를 사용하여 글꼴에 필요한 모든 글리프가 포함되어 있는지 확인하십시오.

유니코드 지원 여부는 글꼴 유형에 따라 다릅니다. Type 1 글꼴은 라틴 문자 집합 및 인코딩만 지원하지만, 한 가지 예외가 있습니다. 내장된 Symbol 및 ZapfDingbats 글꼴은 수학 기호, 그리스어 기호 및 장식 기호를 제공합니다.

TrueType, CFF 및 OpenType 글꼴은 일반적으로 유니코드를 지원하지만 모든 유니코드 문자에 대한 글리프를 포함하지 않을 수 있습니다.

Docotic.Pdf는 출력 PDF 파일 크기를 줄이기 위해 가능한 한 적은 글꼴 바이트를 포함하려고 합니다. 그러나 문서에 많은 글리프를 사용하는 글꼴이 포함된 경우 결과 파일 크기가 상대적으로 커질 수 있습니다. 포함된 글꼴로 인해 추가되는 바이트 수를 최소화하려면 PdfFont.RemoveUnusedGlyphs를 사용하십시오.

텍스트 크기 계산

Canvas API는 절대 위치 지정을 사용하기 때문에 텍스트를 그리기 전에 텍스트가 차지할 공간을 미리 알아야 하는 경우가 많습니다. 특히 긴 문자열을 여러 번 출력하거나, 텍스트를 정확하게 정렬하거나, 다른 콘텐츠와 겹치지 않도록 해야 할 때 중요합니다. PdfCanvas 클래스는 현재 선택된 글꼴과 글꼴 크기를 사용하여 텍스트의 크기를 측정하는 데 도움이 되는 여러 메서드를 제공합니다.

PdfCanvas.MeasureText를 사용하면 캔버스에 표시될 텍스트의 너비와 높이를 모두 얻을 수 있습니다. 일반적인 사용 사례는 다음과 같습니다.

  • 텍스트가 주어진 영역에 맞는지 확인
  • 수동으로 줄 바꿈 계산
  • 텍스트 블록의 상대적 위치 지정

텍스트를 가운데 정렬하거나 오른쪽 정렬하고 가로 크기만 필요한 경우에는 PdfCanvas.GetTextWidth를 사용합니다. 현재 글꼴의 텍스트 한 줄 높이를 알아보려면 PdfCanvas.GetTextHeight를 사용합니다.

그림

PDF 캔버스에 이미지를 그리려면 먼저 PdfImage 객체를 생성한 다음 PdfCanvas.DrawImage 메서드를 사용하여 해당 객체를 그립니다.

다음은 C#에서 PDF에 이미지를 추가하는 방법입니다.

using var pdf = new PdfDocument();
var canvas = pdf.Pages[0].Canvas;

var image = pdf.CreateImage("image.png");
canvas.DrawImage(image, 10, 50);

pdf.Save("image.pdf");

이 코드는 해당 PdfDocument 객체의 CreateImage 메서드를 사용하여 이미지 객체를 생성하고 첫 번째 페이지의 캔버스에 이미지를 그립니다.

지원되는 이미지 형식 및 고급 이미지-PDF 변환 기법에 대한 자세한 내용은 이미지를 이용한 PDF 생성을 참조하십시오.

벡터 그래픽을 사용하여

Docotic.Pdf를 사용하면 PdfCanvas 클래스의 메서드를 이용하여 PDF 캔버스에 직선, 베지어 곡선, 일반적인 기하학적 도형을 직접 그릴 수 있습니다. Draw로 시작하는 메서드(예: DrawLineTo, DrawCircle, DrawRectangle)를 사용하여 캔버스에 표시를 할 수 있습니다.

선과 곡선은 PdfCanvas.Pen을 통해 정의된 현재 펜을 사용하여 렌더링됩니다. 이 펜은 선의 색상, 두께 및 기타 그리기 속성을 지정합니다. 그리기 모드에 따라 도형은 선만 그리거나, 채우거나, 선을 그린 후 채울 수 있습니다. PdfCanvas.Brush를 통해 접근할 수 있는 현재 브러시는 도형의 내부를 채우는 데 사용됩니다.

using var pdf = new PdfDocument();
var canvas = pdf.Pages[0].Canvas;

canvas.DrawCircle(new PdfPoint(60, 100), 40);
canvas.DrawRectangle(
    new PdfRectangle(300, 60, 110, 70),
    PdfDrawMode.Fill);

canvas.CurrentPosition = new PdfPoint(150, 90);
canvas.DrawCurveTo(new PdfPoint(180, 60), new PdfPoint(230, 120), new PdfPoint(250, 90));

pdf.Save("curve-and-shapes.pdf");

모든 PDF 캔버스는 펜, 브러시, 글꼴 및 현재 위치를 포함하는 그래픽 상태를 유지합니다. SaveState를 사용하여 현재 상태를 저장하고 RestoreState를 사용하여 이전 상태로 되돌릴 수 있습니다. 임시 변환 및 유사한 변경 사항을 되돌리는 것 외에도, 상태 복원은 적용된 클리핑을 제거하는 유일한 방법입니다.

그래픽 경로를 사용하면 선, 곡선 및 간단한 도형을 즉시 그리지 않고도 복잡한 도형을 만들 수 있습니다. AppendLineTo 또는 AppendRectangle과 같은 Append 메서드를 사용하여 현재 경로에 세그먼트를 추가할 수 있습니다. 경로는 명시적으로 채우거나 선을 그리기 전까지는 화면에 표시되지 않습니다.

구성된 그래픽 경로를 클리핑 영역으로 사용하여 후속 그리기 작업을 제한할 수 있습니다. 클리핑은 그래픽 상태가 복원될 때까지 활성화 상태로 유지됩니다.

벡터 그래픽 작업에 대한 실제 실행 가능한 예제는 샘플 저장소의 그래픽 섹션에서 확인할 수 있습니다.

색상 및 투명도 설정

PDF 캔버스의 펜과 브러시를 통해 테두리 색상과 채우기 색상을 변경할 수 있습니다. 이를 위해 PdfPen.ColorPdfBrush.Color를 사용하세요.

다채로운 물방울 모양들을 묘사한 그림으로, 단색과 패턴이 있는 형태를 포함하여 Core API의 색상 및 투명도 기능을 보여줍니다.

지원되는 장치 종속 색 공간에는 Gray, RGB 및 CMYK가 있으며, 각각 PdfGrayColor, PdfRgbColorPdfCmykColor로 표현됩니다.

using var pdf = new PdfDocument();
var canvas = pdf.Pages[0].Canvas;

canvas.Pen.Color = new PdfRgbColor(30, 60, 160);
canvas.Pen.Width = 3;

canvas.Brush.Color = new PdfCmykColor(0, 20, 5, 0);

canvas.DrawRectangle(
    new PdfRectangle(50, 50, 100, 40),
    PdfDrawMode.FillAndStroke);

pdf.Save("fill-and-stroke-colors.pdf");

Docotic.Pdf는 CIE 기반의 장치 독립형 색 공간(L*a*b* 색 및 ICC 기반 보정 색 포함)을 지원합니다. 핵심 API는 사용자 지정 잉크 또는 채널별 출력이 필요한 워크플로를 위해 별색 및 분리 색 공간도 지원합니다.

아래 샘플 코드는 Lab 색, 프로필 기반 색 및 별색을 생성하는 방법을 보여줍니다. 예제를 실행하려면 먼저 예제에서 사용하는 ICC 프로필을 다운로드하십시오.

using var pdf = new PdfDocument();
var canvas = pdf.Pages[0].Canvas;

var labColorSpace = new PdfLabColorSpace(pdf, [0.5, 1, 0.5]);
canvas.Pen.Color = new PdfLabColor(labColorSpace, 50, -50, 50);
canvas.Pen.Width = 3;

var rgbProfile = pdf.CreateColorProfile("AdobeCompat-v2.icc");
canvas.Brush.Color = new PdfRgbColor(rgbProfile, 210, 105, 30);

canvas.DrawRectangle(
    new PdfRectangle(50, 50, 100, 40),
    PdfDrawMode.FillAndStroke);

var tintTransform = new PdfExponentialFunction(
    pdf, 1, [0d, 0, 0, 0], [0, 0.8, 0.73, 0.25], [0d, 1]);
var separationColorSpace = new PdfSeparationColorSpace(
    pdf, "BLOODRED", new PdfCmykColorSpace(), tintTransform);
canvas.Pen.Color = new PdfSpotColor(1.0, separationColorSpace);

canvas.DrawCircle(new PdfPoint(100, 70), 60);

pdf.Save("using-special-colors.pdf");

타일링 패턴을 사용하여 도형을 그리고 채울 수도 있습니다. 패턴은 자체 캔버스에 그려진 패턴 셀로 정의됩니다. 패턴에는 두 가지 유형이 있습니다.

  • 색상이 있는 패턴: 셀에서 자체 색상을 정의합니다.
  • 색상이 없는 패턴: 셀은 사용 시 펜/브러시 색상으로 채색됩니다.

패턴을 사용하려면 해당 PdfDocument 객체의 CreateColoredPattern 또는 CreateUncoloredPattern을 사용하여 패턴을 생성합니다. 그런 다음 PdfPen.Pattern 및/또는 PdfBrush.Pattern을 통해 패턴을 적용합니다. 샘플 저장소의 패턴 생성 및 사용 샘플 코드를 참조하십시오.

반투명 색상을 사용하면 투명도가 다른 도형, 텍스트 및 이미지를 그릴 수 있습니다. PdfPen.OpacityPdfBrush.Opacity를 사용하여 반투명 색상을 생성합니다.

또한, 블렌드 모드는 투명한 콘텐츠가 그 아래 콘텐츠와 상호 작용하는 방식을 제어합니다. 캔버스의 블렌드 모드를 변경하려면 PdfCanvas.BlendMode를 사용하십시오.

페이지 추가 및 사용자 지정

Docotic.Pdf는 문서의 모든 페이지를 관리할 수 있는 PdfDocument.Pages 컬렉션을 제공합니다. PdfDocument 클래스에는 새 페이지를 추가하는 두 가지 주요 메서드인 AddPageInsertPage가 있습니다.

AddPage()를 사용하면 문서 끝에 새 페이지를 추가할 수 있습니다. 임의의 위치에 페이지를 삽입하려면 InsertPage(index)를 사용합니다. 두 메서드 모두 새로 생성된 PdfPage 인스턴스를 반환합니다.

모든 새 페이지는 기본적으로 595 x 842 사용자 공간 단위의 크기를 갖습니다. 이는 A4 용지 크기와 같습니다. 대부분의 경우 PDF에서 사용자 공간 단위는 1/72인치입니다. 다시 말해, 페이지 해상도가 인치당 72픽셀일 때 사용자 공간 단위 1개는 픽셀 1개에 해당합니다.

페이지의 너비 및/또는 높이를 특정 사용자 공간 단위로 설정하여 언제든지 페이지 크기를 변경할 수 있습니다.

using var pdf = new PdfDocument();
var page = pdf.Pages[0];

page.Width = 600;
page.Height = 800;

또 다른 옵션은 미리 정의된 크기 중 하나를 사용하는 것입니다.

page.Size = PdfPaperSize.Ledger;

페이지 방향을 세로에서 가로로 변경할 수 있을 뿐 아니라, 페이지를 시계 방향으로 90°, 180°, 또는 270° 회전시킬 수도 있습니다.

page.Orientation = PdfPaperOrientation.Landscape;
page.Rotation = PdfRotation.Rotate180;

페이지 너비, 높이 또는 미리 정의된 크기를 설정하는 것 외에도 기존 콘텐츠를 자르거나 크기를 조정하면서 페이지 크기를 함께 조정할 수도 있습니다.

XObjects를 사용하여 콘텐츠 재사용하기

PDF XObject는 벡터 그래픽, 이미지 및 텍스트를 담는 컨테이너입니다. 각 XObject는 자체 캔버스를 가지므로 일반 PDF 페이지처럼 복잡한 XObject를 만들 수 있습니다.

XObject는 벡터 이미지와 유사합니다. 동일한 개체를 여러 페이지에서 재사용할 수 있으며, 콘텐츠를 다시 만들거나 문서 크기를 늘릴 필요가 없습니다. 또한 이러한 개체는 확대/축소 및 회전해도 시각적 오류가 발생하지 않습니다. 이러한 특성 덕분에 XObject는 로고, 일러스트레이션, 배경, 워터마크 및 기타 반복적으로 사용되는 그래픽과 같은 요소에 이상적입니다.

XObjects 생성 및 사용

XObject를 생성하려면 PdfDocument.CreateXObject 메서드를 사용합니다. 필요한 경우 객체의 너비와 높이를 변경합니다. 그런 다음 일반 페이지 캔버스와 같은 방식으로 텍스트, 이미지 및 그래픽을 캔버스에 채웁니다.

C# 또는 VB.NET 코드에서 PdfCanvas.DrawXObject 메서드를 사용하여 다른 캔버스에 XObject를 추가합니다. XObject는 페이지와 다른 XObject에서 제공하는 캔버스 모두에 그릴 수 있습니다.

다음은 일러스트레이션이 포함된 XObject를 생성하고 두 페이지에 일러스트레이션을 그리는 C# 코드입니다.

using var pdf = new PdfDocument();

var xobj = pdf.CreateXObject();

var options = new PdfTextDrawingOptions(new PdfRectangle(0, 0, 100, 50))
{
    HorizontalAlignment = PdfTextAlign.Center,
    VerticalAlignment = PdfVerticalAlign.Center,
};
xobj.Canvas.FontSize = 16;
xobj.Canvas.DrawText("Company Logo", options);
xobj.Canvas.DrawRectangle(options.Bounds);

var page1 = pdf.Pages[0];
page1.Canvas.DrawXObject(xobj, 100, 100);

var page2 = pdf.AddPage();
page2.Canvas.DrawXObject(xobj, 200, 200);

pdf.Save("using-xobjects.pdf");

XObjects를 사용하여 페이지 변환하기

XObject는 단순한 그래픽 재사용을 넘어 다양한 시나리오를 가능하게 합니다. 예를 들어, 기존 PDF 페이지 두 개를 하나의 큰 페이지로 병합하는 경우가 있습니다. 각 원본 페이지를 XObject로 변환하면 새 캔버스에 두 페이지를 나란히 그려서 병합된 두 페이지 펼침면을 효과적으로 만들 수 있습니다. 이 방법을 사용하면 위치, 간격, 크기 조정을 완벽하게 제어할 수 있어 비교 레이아웃, 책 펼침면 또는 여러 페이지 미리보기를 손쉽게 제작할 수 있습니다.

PDF 페이지 크기를 조정해야 할 때도 동일한 기법을 적용할 수 있습니다. 콘텐츠를 다시 그리거나 재구성하는 대신, 원본 페이지에서 XObject를 생성하고 새 크기에 맞춰 확대/축소하여 그릴 수 있습니다. 이를 통해 크기가 큰 페이지를 축소하거나, 작은 페이지를 확대하거나, 크기가 혼합된 문서를 최소한의 노력으로 표준화할 수 있습니다.

코어 API의 범위 및 제약 조건

코어 API는 PDF 생성에 대한 정밀한 저수준 제어 기능을 제공하지만, 자동 레이아웃 기능은 제공하지 않습니다. 내장된 여백, 머리글, 바닥글 또는 페이지 나누기 로직이 없으며, 모든 콘텐츠는 수동으로 배치해야 합니다. 텍스트 측정 및 페이지 분할은 전적으로 코드에서 처리해야 하므로, 이는 PDF를 생성하는 가장 수동적인 방법입니다.

테이블, 단락 및 페이지 나누기를 포함한 자동 레이아웃 기능은 상위 수준의 레이아웃 API를 통해 사용할 수 있습니다.

결론

Docotic.Pdf 핵심 API는 PDF 생성에 대한 완벽한 제어 기능을 제공합니다. PDF 페이지, XObject, 타일링 패턴에서 제공하는 캔버스에 텍스트, 이미지, 벡터 그래픽을 그릴 수 있습니다.

이 API는 정밀하고 세밀한 제어가 필요한 시나리오에 최적화되어 있습니다. 모든 요소의 위치를 ​​명시적으로 지정하고, 텍스트 크기 및 페이지 분할을 직접 관리하며, 그래픽의 상태, 색상, 투명도를 직접 조작할 수 있습니다.

결론적으로, 핵심 API는 정밀성과 제어가 최우선인 PDF 제작에 가장 유연한 도구입니다.