이 문서에는 C#에서 프로그래밍 방식으로 PDF를 PPT 또는 PPTX로 변환하는 단계와 코드 샘플이 포함되어 있습니다.
PDF는 레이아웃 문제에 대한 걱정 없이 안정적으로 문서를 교환하는 데 널리 사용되는 형식 중 하나입니다. 반면에 PowerPoint 프레젠테이션(PPT/PPTX)은 대화형 슬라이드 형식으로 데이터나 정보를 보다 쉽게 제시할 수 있게 해주었습니다. 어떤 경우에는 PDF 파일에 포함된 정보가 PowerPoint 프레젠테이션으로 표시되어야 합니다. 이러한 경우 PDF에서 PowerPoint PPT/PPTX로 정보를 가져오는 프로세스를 자동화하여 노력을 최소화할 수 있습니다.
위에서 언급한 시나리오를 처리하기 위해 이 문서에서는 다음을 수행하는 방법을 보여줍니다.
- PDF를 C#에서 PowerPoint PPT 또는 PPTX로 변환합니다.
- C#에서 슬라이드를 이미지로 사용하여 PDF를 PowerPoint PPT 또는 PPTX로 변환합니다.
- PDF를 PowerPoint로 변환 진행 상황을 추적하십시오.
PDF를 PowerPoint로 변환하는 C# API
PDF를 PPT 또는 PPTX로 변환하기 위해 PDF 문서를 생성, 처리 및 변환하는 강력한 PDF API인 Aspose.PDF for .NET을 사용합니다. .NET용 Aspose.PDF는 NuGet 및 다운로드 섹션의 DLL 형식에서 사용할 수 있습니다.
C#에서 PDF를 PPT 또는 PPTX로 변환
다음은 .NET용 Aspose.PDF를 사용하여 PDF 파일을 PowerPoint 프레젠테이션으로 변환하는 단계입니다.
- Document 클래스의 객체를 생성합니다.
- PptxSaveOptions 클래스의 개체를 만듭니다.
- Document.Save() 메서드를 호출하여 PDF를 PPT 또는 PPTX로 저장합니다.
다음 코드 샘플은 C#에서 PDF를 PPT로 변환하는 방법을 보여줍니다.
// PDF 문서 로드
Document pdfDocument = new Document("document.pdf");
PptxSaveOptions pptxOptions = new PptxSaveOptions();
// 출력 파일 저장
pdfDocument.Save("PDF to PPT.ppt", pptxOptions);
PDF 문서
변환된 파워포인트 PPT
C#에서 PDF를 PPT로 변환 - 슬라이드를 이미지로 렌더링
변환된 PowerPoint 프레젠테이션에서 텍스트를 선택하지 않으려면 각 슬라이드를 이미지로 렌더링할 수 있습니다. 이를 위해 PptxSaveOptions.SlidesAsImages 속성을 true로 설정하면 나머지 단계는 동일하게 유지됩니다.
다음 코드 샘플은 C#에서 슬라이드를 이미지로 포함하는 PDF를 PPT로 변환하는 방법을 보여줍니다.
// PDF 문서 로드
Document pdfDocument = new Document("document.pdf");
PptxSaveOptions pptxOptions = new PptxSaveOptions();
pptxOptions.SlidesAsImages = true;
// 출력 파일 저장
pdfDocument.Save("PDF to PPT.ppt", pptxOptions);
PDF를 PPT로 변환 진행 상황 추적
.NET용 Aspose.PDF를 사용하여 PDF에서 PPT로 변환 프로세스의 진행 상황을 추적할 수도 있습니다. 변환 프로세스에 대해 다음 정보를 검색할 수 있습니다.
- 전환의 총 진행률
- 전환 전 각 페이지 분석 종료
- 물리적 내보내기 전 결과 페이지 생성
- 각 결과 페이지 내보내기
다음 코드 샘플은 C#에서 PDF에서 PPT로의 변환을 추적하는 방법을 보여줍니다.
// PDF 문서 로드
Document pdfDocument = new Document("document.pdf");
PptxSaveOptions pptxOptions = new PptxSaveOptions();
// 슬라이드를 이미지로 렌더링
pptxOptions.SlidesAsImages = true;
// 콘솔에서 진행 상황 추적
pptxOptions.CustomProgressHandler = ShowProgressOnConsole;
// 출력 파일 저장
pdfDocument.Save("PDF to PPT.ppt", pptxOptions);
//----------------------------------
public static void ShowProgressOnConsole(PptxSaveOptions.ProgressEventHandlerInfo eventInfo)
{
switch (eventInfo.EventType)
{
case ProgressEventType.TotalProgress:
Console.WriteLine(String.Format("{0} - Conversion progress : {1}% .", DateTime.Now.TimeOfDay, eventInfo.Value.ToString()));
break;
case ProgressEventType.ResultPageCreated:
Console.WriteLine(String.Format("{0} - Result page's {1} of {2} layout created.", DateTime.Now.TimeOfDay, eventInfo.Value.ToString(), eventInfo.MaxValue.ToString()));
break;
case ProgressEventType.ResultPageSaved:
Console.WriteLine(String.Format("{0} - Result page {1} of {2} exported.", DateTime.Now.TimeOfDay, eventInfo.Value.ToString(), eventInfo.MaxValue.ToString()));
break;
case ProgressEventType.SourcePageAnalysed:
Console.WriteLine(String.Format("{0} - Source page {1} of {2} analyzed.", DateTime.Now.TimeOfDay, eventInfo.Value.ToString(), eventInfo.MaxValue.ToString()));
break;
default:
break;
}
}
산출
관련 기사
정보: Aspose는 자체 API를 사용하여 PDF를 PowerPoint로 변환하는 무료 온라인 서비스를 개발했습니다.