PDFsharp & MigraDoc

Home of PDFsharp and MigraDoc

MigraDoc: 문서 객체 모델(DOM)을 기반으로 문서를 생성하는 라이브러리입니다. 단락, 표, 차트 등을 객체로 추가하여 문서를 구성하며, 자동으로 레이아웃과 페이지 나누기를 처리하여 PDF 또는 RTF 형식의 문서를 생성할 수 있습니다. 워드 프로세서와 유사한 기능을 제공합니다.
PDFsharp: PDF 파일을 프로그래밍 방식으로 생성하고 처리하는 .NET 라이브러리입니다. GDI+와 유사한 드로잉 루틴을 사용하여 PDF 페이지를 직접 그릴 수 있으며, 화면, PDF, 메타파일 등 다양한 출력 대상으로 동일한 루틴을 사용할 수 있습니다. 다만, 고급 텍스트 레이아웃이나 자동 페이지 나누기는 지원하지 않습니다.

MigraDoc (문서 생성기):

  • 워드 프로세서와 유사한 기능 (단락, 표, 차트, 섹션, 목차 등)을 객체 모델을 통해 프로그래밍 방식으로 제공합니다.
  • 자동으로 레이아웃 및 페이지 나누기를 처리합니다.
  • 결과물: PDF 또는 RTF 파일.
  • 주 사용 목적: 문서 구조와 내용에 집중하고 레이아웃은 라이브러리에 맡기고 싶을 때, 또는 PDF 외에 RTF 형식도 필요할 때 적합합니다.

PDFsharp (PDF 처리 라이브러리):

  • GDI+와 유사한 드로잉 루틴을 사용하여 PDF 페이지를 직접 그립니다.
  • 픽셀, 선 단위의 세밀한 제어가 가능합니다.
  • 기본적인 텍스트 레이아웃만 지원하며, 페이지 나누기는 자동으로 처리되지 않습니다.
  • 결과물: PDF 파일 (드로잉 루틴은 화면이나 메타파일에도 사용 가능).
  • 주 사용 목적: PDF 파일 형식만 필요하고, 내용물의 위치나 모양을 정밀하게 제어하고 싶을 때 적합합니다.

MigraDoc – Getting Started

  1. Document 객체 생성: 모든 MigraDoc 문서 작업의 시작점입니다.
  2. Section 추가: MigraDoc은 페이지 단위가 아닌 섹션 단위로 내용을 구성합니다. 최소 하나 이상의 섹션이 필요합니다.
  3. Paragraph 추가: 섹션에 텍스트 단락을 추가하는 가장 기본적인 방법입니다.
  4. 객체 저장 및 서식 지정: AddParagraph와 같은 메서드는 생성된 객체를 반환하므로, 이를 변수에 저장하여 추가적인 서식을 적용할 수 있습니다.
  5. FormattedText 객체 활용: AddFormattedText 역시 객체를 반환하여 더 세부적인 서식(예: 글자 크기)을 지정할 수 있습니다.
  6. 다양한 요소 추가: 텍스트 외에도 AddTable, AddImage, AddHyperlink 등 다양한 요소를 추가할 수 있음을 시사합니다.
  7. Renderer 선택 및 사용: 문서를 실제 파일(여기서는 PDF)로 만들기 위해 Renderer를 사용합니다.
  8. 파일 저장: 렌더링된 결과를 파일로 저장합니다.
  9. (선택 사항) 파일 열기: 생성된 파일을 바로 열어볼 수 있습니다.

 Samples 

About the Author
(주)뉴테크프라임 대표 김현남입니다. 저에 대해 좀 더 알기를 원하시는 분은 아래 링크를 참조하세요. http://www.umlcert.com/kimhn/

Leave a Reply

*