将 PowerPoint 演示文稿转换为图像可为您带来多种好处。例如,它使您可以轻松地与可能无法访问 PowerPoint 软件的其他人共享内容;它保留原始演示文稿的格式,确保内容完全按预期显示;并且还可以保护演示文稿中的内容不被他人编辑或修改。在本文中,您将学习如何使用 Spire.Presentation for C++ 将 PowerPoint 演示文稿转换为不同的图像格式。
- 将 PowerPoint 演示文稿转换为 JPG 或 PNG 图像
- 将 PowerPoint 演示文稿转换为特定大小的 JPG 或 PNG 图像
- 将 PowerPoint 演示文稿转换为 SVG 图像
安装 Spire. Presentation for C++
有两种方法可以将 Spire.Presentation for C++ 集成到您的应用程序中。一种方法是通过 NuGet 安装它,另一种方法是从我们的网站下载包并将库复制到您的程序中。通过 NuGet 安装更简单,更推荐使用。您可以通过访问以下链接找到更多详细信息。
如何将 Spire.Presentation for C++ 集成到 C++ 程序中
将 PowerPoint 演示文稿转换为 JPG 或 PNG 图像
Spire.Presentation for C++ 提供了 ISlide->SaveAsImage() 方法,使您能够将 PowerPoint 演示文稿中的幻灯片转换为 JPG 或 PNG 图像。详细步骤如下:
- 初始化 Presentation 类的一个实例。
- 使用 Presentation->LoadFromFile() 方法加载 PowerPoint 演示文稿。
- 使用 Presentation->GetSlides() 方法访问演示文稿的幻灯片集合。
- 遍历集合中的幻灯片。
- 使用 ISlide->SaveAsImage() 方法将每张幻灯片保存到图像流中。
- 使用 Stream->Save() 方法将图像流保存为 JPG 或 PNG 文件。
- C++
#include "Spire.Presentation.o.h"
using namespace Spire::Presentation;
using namespace std;
int main()
{
//初始化 Presentation 类的一个实例
Presentation* ppt = new Presentation();
//加载 PowerPoint 演示文稿
ppt->LoadFromFile(L"示例文档.pptx");
//获取演示文稿的幻灯片合集
SlideCollection* slides = ppt->GetSlides();
//遍历集合中的幻灯片
for (int i = 0; i < slides->GetCount(); i++)
{
ISlide* slide = slides->GetItem(i);
//将每张幻灯片保存为 PNG 图像
Stream* image = slide->SaveAsImage();
image->Save((L"图像\\ToImage_img_" + to_wstring(i) + L".png").c_str());
}
ppt->Dispose();
delete ppt;
}
将 PowerPoint 演示文稿转换为特定大小的 JPG 或 PNG 图像
您可以使用 ISlide->SaveAsImage(int width, int height) 方法将 PowerPoint 演示文稿中的幻灯片转换为具有特定大小的 JPG 或 PNG 图像。详细步骤如下:
- 初始化 Presentation 类的一个实例。
- 使用 Presentation->LoadFromFile() 方法加载 PowerPoint 演示文稿。
- 使用 Presentation->GetSlides() 方法访问演示文稿的幻灯片集合。
- 遍历集合中的幻灯片。
- 使用 Islide->SaveAsImage(int width, int height) 方法将每张幻灯片保存到图像流中。
- 使用 Stream->Save() 方法将图像流保存为 JPG 或 PNG 文件。
- C++
#include "Spire.Presentation.o.h"
using namespace Spire::Presentation;
using namespace std;
int main()
{
//初始化 Presentation 类的一个实例
Presentation* ppt = new Presentation();
//加载PowerPoint演示文稿
ppt->LoadFromFile(L"示例文档.pptx");
//获取演示文稿的幻灯片集
SlideCollection* slides = ppt->GetSlides();
//循环遍历集合中的幻灯片
for (int i = 0; i < slides->GetCount(); i++)
{
ISlide* slide = slides->GetItem(i);
//将每张幻灯片保存为大小为600 x 400像素的PNG图像
Stream* image = slide->SaveAsImage(600, 400);
image->Save((L"具有特定大小的图像\\ToImage_img_" + to_wstring(i) + L".png").c_str());
}
ppt->Dispose();
delete ppt;
}
将 PowerPoint 演示文稿转换为 SVG 图像
要将 PowerPoint 演示文稿中的幻灯片转换为 SVG 图像,可以使用 ISlide->SaveToSVG() 方法。具体步骤如下:
- 初始化 Presentation 类的实例。
- 使用 Presentation->LoadFromFile() 方法加载 PowerPoint 演示文稿。
- 使用 Presentation->GetSlides() 方法访问演示文稿的幻灯片集合。
- 反复遍历集合中的幻灯片。
- 使用 ISlide->SaveToSVG() 方法将每张幻灯片保存到 SVG 流中。
- 使用 Stream->Save() 方法将 SVG 流保存到 SVG 文件中。
- C++
#include "Spire.Presentation.o.h"
using namespace Spire::Presentation;
using namespace std;
int main()
{
//初始化Presentation类的实例
Presentation* ppt = new Presentation();
//加载PowerPoint演示文稿
ppt->LoadFromFile(L"示例文档.pptx");
//获取演示文稿的幻灯片集
SlideCollection* slides = ppt->GetSlides();
//设置将PowerPoint转换为SVG时是否保留笔记
ppt->SetIsNoteRetained(true);
//循环遍历集合中的幻灯片
for (int i = 0; i < slides->GetCount(); i++)
{
ISlide* slide = slides->GetItem(i);
//将每张幻灯片保存为SVG图像
Stream* svg = slide->SaveToSVG();
svg->Save((L"SvgImages\\ToSVG-" + to_wstring(i) + L".svg").c_str());
}
ppt->Dispose();
delete ppt;
}
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。