PHP에서 PowerPoint 프레젠테이션을 Markdown으로 변환
소개
Aspose.Slides를 사용하면 PowerPoint 프레젠테이션을 Markdown으로 변환할 수 있으며, 이는 문서 워크플로, 정적 사이트 생성, 콘텐츠 마이그레이션 및 버전 관리된 텍스트 게시에 유용합니다. API는 PPT 및 PPTX 프레젠테이션을 MD 파일로 직접 내보내는 것을 지원하며, 결과 Markdown 문서에 슬라이드 내용이 어떻게 표시되는지를 제어하는 추가 옵션을 제공합니다.
프레젠테이션을 일반 Markdown으로 내보낼 수 있으며, CommonMark 및 GitHub Flavored Markdown과 같은 다양한 Markdown 변형 중에서 선택하고, 내보내기 중 이미지 처리 방식을 구성할 수 있습니다. 시각적 콘텐츠가 포함된 프레젠테이션의 경우, Aspose.Slides는 이미지를 별도 폴더에 저장하고 생성된 Markdown 파일에서 참조하도록 할 수 있습니다.
ExportType = MarkdownExportType::Visual을 설정하고, Markdown 문서에서 참조되는 이미지가 저장될 BasePath를 지정해야 합니다.
프레젠테이션을 Markdown으로 변환
이 섹션에서는 Aspose.Slides가 PowerPoint 및 OpenDocument 프레젠테이션(PPT, PPTX, ODP)을 깨끗한 Markdown으로 변환하는 방법을 설명합니다. 원래 슬라이드 계층 구조, 텍스트 및 핵심 형식을 유지하여 문서화 또는 버전 관리 워크플로에서 추가 수작업 없이 콘텐츠를 재사용할 수 있습니다.
- 프레젠테이션을 나타내기 위해 Presentation 클래스의 인스턴스를 생성합니다.
- save 메서드를 사용하여 Markdown 파일로 내보냅니다.
다음 PHP 코드는 PowerPoint 프레젠테이션을 Markdown으로 변환하는 방법을 보여줍니다:
$presentation = new Presentation("presentation.pptx");
try {
$presentation->save("presentation.md", SaveFormat::Md);
} finally {
$presentation->dispose();
}
프레젠테이션을 Markdown 변형으로 변환
Aspose.Slides를 사용하면 PowerPoint 프레젠테이션을 기본 구문을 사용한 Markdown으로 변환할 수 있을 뿐만 아니라 CommonMark, GitHub‑flavored Markdown, Trello, XWiki, GitLab 및 기타 17가지 Markdown 변형으로 변환할 수 있습니다.
다음 PHP 코드는 PowerPoint 프레젠테이션을 CommonMark로 변환하는 방법을 보여줍니다:
$presentation = new Presentation("presentation.pptx");
try {
$saveOptions = new MarkdownSaveOptions();
$saveOptions->setFlavor(Flavor->CommonMark);
$presentation->save("presentation.md", SaveFormat::Md, $saveOptions);
} finally {
$presentation->dispose();
}
지원되는 23가지 Markdown 변형은 Flavor enumeration에 나열되어 있습니다.
이미지가 포함된 프레젠테이션을 Markdown으로 변환
MarkdownSaveOptions 클래스는 결과 Markdown 파일을 구성할 수 있는 속성과 열거형을 제공합니다. 예를 들어, MarkdownExportType 열거형은 이미지 처리 방식을 Sequential, TextOnly 또는 Visual 중 하나로 지정합니다.
markdownSaveOptions.setExportType(MarkdownExportType::Visual)을 호출하고, Markdown 파일에서 참조되는 이미지가 저장될 BasePath를 지정합니다.
이미지 순차 변환
결과 Markdown에서 이미지가 각각 순차적으로 나타나길 원한다면 Sequential 옵션을 선택해야 합니다. 다음 PHP 코드는 이미지가 포함된 프레젠테이션을 Markdown으로 변환하는 방법을 보여줍니다:
$presentation = new Presentation("presentation.pptx");
try {
$saveOptions = new MarkdownSaveOptions();
$saveOptions->setShowHiddenSlides(true);
$saveOptions->setShowSlideNumber(true);
$saveOptions->setFlavor(Flavor->Github);
$saveOptions->setExportType(MarkdownExportType::Sequential);
$saveOptions->setNewLineType(NewLineType::Windows);
$slideIndices = array(1, 2, 3, 4);
$presentation->save("presentation.md", $slideIndices, SaveFormat::Md, $saveOptions);
} finally {
$presentation->dispose();
}
이미지 시각적 변환
결과 Markdown에 이미지가 함께 표시되길 원한다면 Visual 옵션을 선택해야 합니다. 이 경우, 이미지는 애플리케이션 현재 디렉터리에 저장되며 (Markdown 문서에 상대 경로가 생성됩니다), 또는 원하는 디렉터리와 폴더 이름을 지정할 수 있습니다.
다음 PHP 코드는 해당 작업을 보여줍니다:
$presentation = new Presentation("presentation.pptx");
try {
$outPath = "c:/documents";
$saveOptions = new MarkdownSaveOptions();
$saveOptions->setExportType(MarkdownExportType::Visual);
$saveOptions->setImagesSaveFolderName("md-images");
$saveOptions->setBasePath($outPath);
$presentation->save("presentation.md", SaveFormat::Md, $saveOptions);
} finally {
$presentation->dispose();
}
자주 묻는 질문
하이퍼링크가 Markdown으로 내보낼 때 유지되나요?
예. 텍스트 hyperlinks는 표준 Markdown 링크로 보존됩니다. 슬라이드 transitions 및 animations는 변환되지 않습니다.
다중 스레드로 실행하여 변환 속도를 높일 수 있나요?
파일별로 병렬 처리를 할 수 있지만, 스레드 간에 동일한 Presentation 인스턴스를 don’t share하지 않아야 합니다. 파일당 별도의 인스턴스/프로세스를 사용하여 경쟁을 방지하십시오.
이미지는 어떻게 처리되나요—어디에 저장되며 경로는 상대 경로인가요?
Images는 전용 폴더에 내보내지며, 기본적으로 Markdown 파일은 상대 경로로 이미지를 참조합니다. 기본 출력 경로 및 자산 폴더 이름을 구성하여 예측 가능한 저장소 구조를 유지할 수 있습니다.