Convert PDF to Microsoft PowerPoint in C++
Overview
本文解释了如何使用C++将PDF转换为PowerPoint格式。它涵盖了以下主题。
格式: PPTX
格式: Microsoft PowerPoint PPTX格式
本文涵盖的其他主题。
C++ PDF到PowerPoint转换
**Aspose.PDF for C++**允许您跟踪PDF到PPTX转换的进度。
在PDF到PPTX转换过程中,文本被渲染为可选择/更新的文本。请注意,为了将PDF文件转换为PPTX格式,Aspose.PDF提供了一个名为PptxSaveOptions
的类。PptxSaveOptions类的对象作为第二个参数传递给Document.Save(..) method
方法。以下代码片段展示了将PDF文件转换为PPTX格式的过程。
使用Aspose.PDF for C++进行简单的PDF到PPTX转换
为了将PDF转换为PPTX,Aspose.PDF for C++建议使用以下代码步骤。
步骤:在C++中将PDF转换为PPTX | 步骤:在C++中将PDF转换为PowerPoint PPTX格式
- 创建一个 Document 类的实例。
- 创建一个 PptxSaveOptions 类的实例。
- 使用 Document 对象的 Save 方法 将 PDF 保存为 PPTX。
void ConvertPDFtoPPTX()
{
std::clog << __func__ << ": Start" << std::endl;
// 路径名称的字符串
String _dataDir("C:\\Samples\\Conversion\\");
// 文件名称的字符串
String infilename("JSON Fundamenals.pdf");
String outfilename("JSON Fundamenals.pptx");
// 打开文档
auto document = MakeObject<Document>(_dataDir + infilename);
// 以 PPTX 格式保存输出
document->Save(_dataDir + outfilename, SaveFormat::Pptx);
std::clog << __func__ << ": Finish" << std::endl;
}
将 PDF 转换为 PPTX 并将幻灯片作为图像
如果您需要将可搜索的 PDF 转换为以图像而非可选文本形式的 PPTX,Aspose.PDF 提供了通过 Aspose.Pdf.PptxSaveOptions 类实现的功能。 要实现这一点,将 PptxSaveOptions 类的属性 SlidesAsImages 设置为 ’true’,如下代码示例所示。
void ConvertPDFtoPPTX_SlidesAsImages()
{
std::clog << __func__ << ": Start" << std::endl;
// 路径名称字符串
String _dataDir("C:\\Samples\\Conversion\\");
// 文件名字符串
String infilename("JSON Fundamenals.pdf");
String outfilename("JSON Fundamenals.pptx");
// 打开文档
auto document = MakeObject<Document>(_dataDir + infilename);
auto pptxOptions = MakeObject<PptxSaveOptions>();
pptxOptions->set_SlidesAsImages(true);
// 以PPTX格式保存输出
document->Save(_dataDir + outfilename, pptxOptions);
std::clog << __func__ << ": Finish" << std::endl;
}
PPTX 转换的进度详情
Aspose.PDF for C++ 允许您跟踪 PDF 到 PPTX 转换的进度。 Aspose.Pdf.PptxSaveOptions 类提供了 CustomProgressHandler 属性,可以指定为自定义方法,用于跟踪转换进度,如以下代码示例所示。
void ConvertPDFtoPPTX_ProgressDetailConversion()
{
std::clog << __func__ << ": Start" << std::endl;
// 路径名字符串
String _dataDir("C:\\Samples\\Conversion\\");
// 文件名字符串
String infilename("JSON Fundamenals.pdf");
String outfilename("JSON Fundamenals.pptx");
// 打开文档
auto document = MakeObject<Document>(_dataDir + infilename);
auto pptxOptions = MakeObject<PptxSaveOptions>();
//pptxOptions->set_SlidesAsImages(true);
//指定自定义进度处理程序
pptxOptions->set_CustomProgressHandler(ShowProgressOnConsole);
// 以 PPTX 格式保存输出
document->Save(_dataDir + outfilename, pptxOptions);
std::clog << __func__ << ": Finish" << std::endl;
}
以下是用于显示进度转换的自定义方法。
void ShowProgressOnConsole(SharedPtr<UnifiedSaveOptions::ProgressEventHandlerInfo> eventInfo)
{
switch (eventInfo->EventType)
{
case ProgressEventType::TotalProgress:
std::clog << DateTime::get_Now().get_TimeOfDay() << " - 转换进度 : " << eventInfo->Value << std::endl;
break;
case ProgressEventType::ResultPageCreated:
std::clog << DateTime::get_Now().get_TimeOfDay() << " - 结果页面的 " << eventInfo->Value << " of " << eventInfo->MaxValue << " 布局已创建." << std::endl;
break;
case ProgressEventType::ResultPageSaved:
std::clog << DateTime::get_Now().get_TimeOfDay() << " - 结果页面的 " << eventInfo->Value << " of " << eventInfo->MaxValue << " 已导出." << std::endl;
break;
case ProgressEventType::SourcePageAnalysed:
std::clog << DateTime::get_Now().get_TimeOfDay() << " - 源页面 " << eventInfo->Value << " of " << eventInfo->MaxValue << " 已分析." << std::endl;
break;
default:
break;
}
}
另请参阅
本文还涵盖这些主题。代码与上面相同。
格式: PowerPoint
Format: Microsoft PowerPoint PPTX 格式
- C++ PDF 转 PowerPoint PPTX 代码
- C++ PDF 转 PowerPoint PPTX API
- C++ PDF 转 PowerPoint PPTX 编程实现
- C++ PDF 转 PowerPoint PPTX 库
- C++ 将 PDF 保存为 PowerPoint PPTX
- C++ 从 PDF 生成 PowerPoint PPTX
- C++ 从 PDF 创建 PowerPoint PPTX
- C++ PDF 转 PowerPoint PPTX 转换器
Format: PPTX