XML to PDF C#

XML(eXtensible Markup Language)는 데이터의 호환성을 위해 널리 사용되는 형식이며, PDF(Portable Document Format)는 읽고 인쇄할 수 있는 형식으로 문서를 작성하고 공유하는 데 가장 적합한 선택입니다. 이 가이드에서는 C#을 사용하여 XML을 PDF로 원활하게 변환하는 방법을 살펴보겠습니다.

왜 XML을 PDF로 변환할까?

기술적인 세부 사항에 들어가기 전에, XML을 PDF로 변환해야 하는 이유에 대해 간단히 논의해 봅시다. XML은 데이터를 저장하는 데 훌륭하지만, 시각적 표현에 있어서는 그리 사용자 친화적이지 않습니다. 반면 PDF는 정보를 제시하는 데 있어 세련되고 표준화된 형식을 제공합니다. XML을 PDF로 변환함으로써, 전문적인 문서를 손쉽게 생성할 수 있으며, 공유, 인쇄 및 보관 목적에 적합합니다.

XML to PDF Converter - C# API 설치

귀하의 컴퓨터에 Conholdate.Total for .NET을 설치하려면 DLL 파일을 다운로드하거나 다음 NuGet 설치 명령을 실행하십시오:

PM> NuGet\Install-Package Conholdate.Total

XML을 C#에서 PDF로 변환하기

C# 예제를 위한 XML에서 PDF로의 변환을 위해, 아래의 샘플 XML 파일을 사용할 것입니다:

<?xml version="1.0" encoding="utf-8" ?>
<Document xmlns="Aspose.Pdf">
  <Page id="mainPage">
    <TextFragment>
      <TextSegment>Hello</TextSegment>
    </TextFragment>
 
    <TextFragment>
      <TextSegment>World!</TextSegment>
    </TextFragment>
  </Page>
</Document>

다음으로, XML에서 PDF 변환을 진행하기 위해 아래 단계를 따르세요:

  • 입력 XML 파일을 로드하기 위해 Document 클래스 객체를 인스턴스화합니다.
  • BindXml 메서드로 소스 파일을 바인딩합니다.
  • XML을 Save 메서드를 사용하여 PDF로 변환합니다.

다음 샘플 코드는 C#에서 XML을 PDF로 변환하는 방법을 보여줍니다:

// 문서 객체 인스턴스화
Document doc = new Document();

// 소스 XML 파일 바인드
doc.BindXml(dataDir + "input.xml");

// XML을 PDF로 변환
doc.Save(dataDir + "XMLToPDF.pdf");

그러나 여기서 주목할 점은 소스 XML 파일이 변환을 위해 XSD schema를 따라야 한다는 것입니다.

XML 및 XSLT를 PDF로 변환하기 위해 C#에서 사용할 수 있는 방법이 있습니다. XML 데이터는 종종 XSLT(Extensible Stylesheet Language Transformations)를 사용하여 HTML 또는 기타 형식으로 변환한 다음, 최종적으로 PDF로 변환할 수 있습니다. 이 과정을 구현하는 기본적인 접근 방식은 아래와 같습니다.

  1. XML 및 XSLT 파일 준비: 변환할 XML 파일과 XSLT 스타일시트를 준비합니다.

  2. XSLT 변환: XslCompiledTransform 클래스를 사용하여 XML을 XSLT로 변환하여 HTML을 생성합니다.

  3. HTML을 PDF로 변환: 생성된 HTML을 PDF로 변환하기 위해 iTextSharp 또는 PdfSharp 같은 라이브러리를 사용할 수 있습니다.

다음은 이 과정을 구현한 간단한 예제 코드입니다.

using System

일부 시나리오에서는 PDF 문서를 생성해야 하는 사용자 정의 XML 파일이 있을  있습니다. 따라서 다음 샘플 파일에 설명된 대로 사용자 정의 XML 파일을 처리하기 위해 XSLT 파일을 만들  있습니다:

### 샘플 XML 파일

샘플 XSLT 파일

<?xml version="1.0" encoding="utf-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:template match="text()"/>
    <xsl:template match="/Contents">
    <html>
      <Document xmlns="Aspose.Pdf" IsAutoHyphenated="false">
        <PageInfo>
          <DefaultTextState
                            Font = "Helvetica" FontSize="8" LineSpacing="4"/>
          <Margin Left="5cm" Right="5cm" Top="3cm" Bottom="15cm" />
        </PageInfo>
        <Page id="mainSection">
          <TextFragment>
            <TextSegment>
              <xsl:value-of select="Content"/>
            </TextSegment>
          </TextFragment>
        </Page>
      </Document>
    </html>
</xsl:template>
</xsl:stylesheet>

이제 다음 단계는 C#에서 XML 및 XSLT를 PDF 문서로 변환하는 방법을 자세히 설명합니다:

  • Document 클래스의 객체를 생성합니다.
  • XML과 XSLT 파일을 바인딩하세요.
  • 출력된 PDF 문서를 저장하세요.

아래의 코드 조각은 C#에서 XML과 XSLT를 PDF로 변환하는 방법을 설명합니다:

//Create pdf document
Aspose.Pdf.Document pdf = new Aspose.Pdf.Document();

//XML 및 XSLT 파일 바인딩
try
{
    pdf.BindXml("hello-world.xml", "hello-world.xslt");
}
catch (System.Exception)
{

    throw;
}

//문서를 저장하십시오.
pdf.Save("HelloWorldXml.pdf");

무료 평가 라이센스

You can request a 무료 임시 라이센스 to evaluate all the features of the API without any watermarks or limitations.

요약하기

이 튜토리얼에서는 XML을 PDF로 변환하는 C#의 기본 사항과 예제 코드 조각 및 샘플 파일을 배웠습니다. 이를 통해 XML 데이터를 시각적으로 매력적이고 공유 가능한 PDF 문서로 변환할 수 있습니다. 보고서 도구를 구축하든, 송장을 생성하든, 문서를 만들든, XML에서 PDF로의 변환은 애플리케이션에서 문서 변환 프로세스를 간소화합니다. 문의 사항이 있을 경우 forum으로 언제든지 문의해 주십시오.

See Also