XML은 데이터를 저장하고 전송하도록 설계된 W3C 권장 자체 설명 언어입니다. 개발자는 XML 형식을 .NET 응용 프로그램 내에서 PDF 또는 MS Word 문서와 같이 사람이 읽을 수 있는 다른 형식으로 변경할 수 있습니다. 이 기사에서는 간단한 템플릿을 통해 C#을 사용하여 XML 데이터를 PDF 및 MS Word 보고서로 변환하는 방법에 대해 설명합니다.

C#의 XML에서 PDF로 보고서

다음 주제는 아래에서 논의됩니다.

보고서 생성 .NET API – XML에서 PDF 및 WORD로

GroupDocs.Assembly for .NETDOCX 또는 TXT 템플릿을 사용하여 XML 데이터에서 보고서 생성을 자동화하는 API입니다. 또한 JSON, CSV 및 기타 데이터 소스를 지원하여 데이터를 다양한 파일 형식의 보고서로 변환합니다.

다운로드 섹션에서 DLL 또는 MSI 설치 프로그램을 다운로드하거나 NuGet을 통해 .NET 애플리케이션에 API를 설치할 수 있습니다.

PM> Install-Package GroupDocs.Assembly

C#의 XML 데이터에서 PDF 보고서 생성

간단한 3단계를 통해 XML 데이터를 형식이 지정된 PDF 보고서로 변환할 수 있습니다.

  1. XML 데이터 소스를 로드합니다.
  2. 로드된 XML 데이터에 따라 템플릿을 정의합니다.
  3. 마지막으로 보고서 생성 방식에 XML 데이터 소스와 템플릿을 제공합니다.

XML 데이터

다음 XML 샘플 데이터는 PDF 보고서로 변환하는 데 사용됩니다. 여기에는 관리자 및 해당 고객의 데이터가 포함되어 있으며 자세한 내용이 포함되어 있습니다.

<Managers>
	<Manager>
		<Name>John Smith</Name>
		<Contract>
			<Client>
				<Name>A Company</Name>
			</Client>
			<Price>1200000</Price>
		</Contract>
		<Contract>
		...
		</Contract>
		...
	</Manager>
	<Manager>
		<Name>Tony Anderson</Name>
		...
	</Manager>
	...
</Managers>

템플릿

소스 XML 데이터에 따라 TXT 또는 DOCX 형식으로 템플릿을 정의합니다. 위에서 언급한 관리자의 XML 데이터에 따라 생성된 아래 언급된 템플릿을 사용하고 있습니다. 이렇게 하면 보고서 생성기가 관리자와 해당 클라이언트를 반복합니다. 템플릿이 완료되면 거의 완료됩니다. 보고서 생성을 위해 아래 코드를 사용할 수 있습니다.

<<foreach \[in managers\]>>Manager: <<\[Name\]>>
Contracts:
<<foreach \[in Contract\]>>- <<\[Client.Name\]>> ($<<\[Price\]>>)
<</foreach>>
<</foreach>>

C# XML에서 PDF 보고서를 생성하는 단계

다음 단계를 통해 정의된 템플릿에 따라 XML 데이터에서 PDF 보고서 생성을 자동화할 수 있습니다.

  • XML 데이터 파일, 텍스트 템플릿 파일 및 PDF 출력 보고서 파일을 정의합니다.
  • XML 데이터 파일로 XMLDataSoure를 인스턴스화합니다.
  • 정의된 XML 데이터 소스로 DataSourceInfo를 생성합니다.
  • AssembleDocument 메서드를 호출하여 PDF 보고서를 생성합니다.

다음 코드는 위의 단계를 구현하고 C#을 사용하여 XML 데이터 소스에서 PDF를 생성합니다.

// CSharp의 TXT 템플릿을 사용하여 XML 데이터에서 PDF 보고서 생성
// 데이터 소스, 템플릿 및 출력 보고서 파일을 정의합니다.
string xmlDataSource = @"dataPath/Managers.xml";
string templateFilePath = @"templatePath/xml-template.txt";
string reportFilePath = @"reportsPath/xml-to-pdf-report.pdf";
// XML 데이터 소스 로드
XmlDataSource dataSource = new XmlDataSource(xmlDataSource);
// 문서를 조합하여 PDF 생성
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "managers"));

C#의 XML 데이터에서 MS Word 보고서 생성

같은 맥락에서 동일한 XML 데이터를 사용하여 MS Word DOC/DOCX 형식으로 보고서를 작성할 수도 있습니다. 출력 파일 이름을 변경해야 한다는 점을 제외하고는 위에서 논의한 것과 코드에 차이가 없습니다.

  • XML 데이터 파일을 로드합니다.
  • TXT 또는 DOCX 형식의 템플릿 정의.
  • 출력 보고서 문서 형식을 DOCX로 설정합니다.
  • XML 데이터 파일, 템플릿 및 출력 파일 경로를 DocumentAssembler에 제공하여 XML을 DOCX로 변환합니다.

다음 코드는 XML을 변환하고 C#을 사용하여 정의된 템플릿을 사용하여 DOCX 파일을 생성합니다.

// CSharp의 텍스트 템플릿을 사용하여 XML 데이터에서 MS Word 보고서 생성
// 데이터 소스, 템플릿 및 출력 보고서 파일을 정의합니다.
string xmlDataSource = @"dataPath/Managers.xml";
string templateFilePath = @"templatePath/xml-template.txt";
string reportFilePath = @"reportsPath/xml-to-word-report.docx";
// XML 데이터 소스 로드
XmlDataSource dataSource = new XmlDataSource(xmlDataSource);
// 문서를 조합하여 Word 보고서 생성
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "managers"));

무료 API 라이선스 받기

평가 제한 없이 API를 사용하기 위해 임시 무료 라이선스 받기를 할 수 있습니다.

결론

요약하자면, .NET 응용 프로그램과 함께 C#을 사용하여 XML 데이터를 보고서로 PDF 형식으로 변환하는 방법을 배웠습니다. 또한 템플릿을 사용하여 동일한 XML에서 DOC/DOCX 형식의 보고서 생성에 대해 논의했습니다. 이 일련의 보고서 생성 게시물을 읽은 후 JSON, CSV, XML에서 PDF 및 MS Word 보고서를 생성하여 .NET 응용 프로그램을 빌드하는 고유한 보고서를 개발할 수 있습니다.

GroupDocs.Assembly, 옵션 및 예제에 대한 자세한 내용은 문서GitHub 저장소를 참조하십시오. 추가 문의 사항은 포럼을 통해 문의해 주십시오.

또한보십시오