以 C++ 从 PDF 中提取图像

如何使用 C++ 库从 PDF 中提取图片

如何使用 C++ 库从 PDF 中提取图片

你需要从 PDF 中提取图像吗?以编程方式修改 PDF 文档是现代数字工作流程的重要组成部分。使用像 Aspose.PDF 这样的 C++ 库,开发者可以从 PDF 中提取图像。这些库是独立的解决方案,不依赖其他软件,可以用于商业用途。它们涵盖了专业 C++ 开发人员的所有可能需求。

  • 从 PDF 中提取文本
  • 从 PDF 中提取图片
  • 从 PDF 中提取字体
  • 从表单中提取数据
  • 从邮票中提取文本
  • 从表中提取数据

为了从 PDF 文件中提取图像,我们将使用 Aspose.PDF for C++ API,这是一款适用于 cpp 平台的功能丰富、功能强大且易于使用的文档处理 API。打开 NuGet 包管理器,搜索 aspose.pdf 然后安装。您也可以使用包管理器控制台中的以下命令。

Package Manager Console

PM > Install-Package Aspose.PDF.Cpp

以 C++ 从 PDF 中提取图像


你需要 Aspose.PDF for C++ 才能在你的环境中试用代码。

1.在 PDF 中加载 “文档” 实例。 1.创建 XImage 对象来提取图像。 1.将输出图像保存到 jpeg 文件中。 1.保存更新后的 PDF 文件。

从 PDF 中提取图像-C++

此示例代码显示如何从 PDF 文档中提取图像

Input file:

File not added

Output format:

PDF

Output file:

    void ExtractImage()
{
    std::clog << __func__ << ": Start" << std::endl;
    // String for path name
    String _dataDir("C:\\Samples\\Parsing\\");

    // String for file name
    String infilename("sample-image.pdf");
    String outfilename("extracted_image.jpeg");

    // Open document
    auto document = MakeObject<Document>(_dataDir + infilename);

    // Extract a particular image
    auto xImage = document->get_Pages()->idx_get(1)->get_Resources()->get_Images()->idx_get(1);

    auto outputImage = System::IO::File::OpenWrite(_dataDir + outfilename);

    // Save output image
    xImage->Save(outputImage, System::Drawing::Imaging::ImageFormat::get_Jpeg());
    outputImage->Close();

    std::clog << __func__ << ": Finish" << std::endl;
}

關於 C++ API 的 aspose.PDF

Aspose.PDF for C++ 是一个强大的处理库,它使开发人员无需使用 Adobe Acrobat 即可创建、阅读和操作 PDF 文档。它提供了广泛的功能,例如创建表单、添加/编辑文本、操作PDF页面、添加注释、处理自定义字体等等。

Aspose.PDF for C++ 是一个库,它使开发人员能够向其应用程序添加 PDF 处理功能。API 可用于构建 32 位和 64 位应用程序,无需使用 Adobe Acrobat 即可生成、读取、转换和操作 PDF 文件。

在 API 参考中,你可以在 C++ 库的 Aspose.PDF 中找到每个类和方法的详细解释和示例。它还建议查看 文档