pdf 文件格式适用于大多数场合。但是,您仍然可能会遇到需要将 pdf 转换为图像的情况。将某个 pdf 页面转换为图像后,您可以将其发布到社交媒体上,将其上传或传输到只能显示图像的设备中,或者将其插入到您的 word 文档或 powerpoint 演示文稿中。在本文中,您将学习如何使用 spire.pdf for c 在 c 中以编程方式将 pdf 转换为图像。
安装 spire.pdf for c
有两种方法可以将 spire.pdf for c 集成到您的应用程序中。一种方法是通过 安装它,另一种方法是从我们的网站下载包并将库复制到您的程序中。通过 nuget 安装更简单,更推荐使用。您可以通过访问以下链接找到更多详细信息。
如何将 spire. pdf for c 集成到 c 程序中
将指定页面转换为图像
spire.pdf for c 提供 pdfdocument->saveasimage(int pageindex) 方法将特定页面转换为图像流。然后可以将流保存为具有所需扩展名(如 png、jpg 和 bmp)的图像文件。以下是详细步骤。
- 创建一个 pdfdocument 实例。
- 使用 pdfdocument->loadfromfile() 方法加载 pdf 文件。
- 使用 pdfdocument->saveasimage() 方法将特定页面转换为图像流。
- 使用 stream->save() 方法将图像流保存为 jpg 文件。
- c
#include "spire.pdf.o.h";
using namespace spire::pdf;
using namespace std;
int main() {
//指定输入和输出文件路径
wstring inputfile = l"c:\\users\\administrator\\desktop\\示例文档.pdf";
wstring outputfile = l"c:\\users\\administrator\\desktop\\output\\toimage";
//创建一个 pdfdocument 对象
pdfdocument* doc = new pdfdocument();
//加载 pdf 文件
doc->loadfromfile(inputfile.c_str());
//将特定页面转换为图像
stream* image = doc->saveasimage(0, pdfimagetype::bitmap);
//将图像写入 .jpg 文件
wstring filename = outputfile l".jpg";
image->save(filename.c_str());
doc->close();
delete doc;
}
将整个 pdf 转换为多个图像
为了将整个 pdf 保存为单独的图像,您只需将转换部分放在循环语句中。详细步骤如下。
- 创建一个 pdfdocument 实例。
- 使用 pdfdocument->loadfromfile() 方法加载 pdf 文件。
- 遍历文档中的页面并使用 pdfdocument->saveasimage(int pageindex) 方法将每个页面转换为图像流。
- 使用 stream->save() 方法将图像流保存为 jpg 文件。
- c
#include "spire.pdf.o.h";
using namespace spire::pdf;
using namespace std;
int main() {
//指定输入和输出文件路径
wstring inputfile = l"c:\\users\\administrator\\desktop\\示例文档.pdf";
wstring outputfile = l"c:\\users\\administrator\\desktop\\output\\toimg-";
//创建一个 pdfdocument 对象
pdfdocument* doc = new pdfdocument();
//加载 pdf 文件
doc->loadfromfile(inputfile.c_str());
//遍历文档中的页面
for (int i = 0; i < doc->getpages()->getcount(); i ) {
//将选定页面另存为图像
stream* image = doc->saveasimage(i);
//将图像写入 .jpg 文件
wstring filename = outputfile to_wstring(i) l".jpg";
image->save(filename.c_str());
}
doc->close();
delete doc;
}
申请临时 license
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用javascript。获取有效期 30 天的临时许可证。