通过开源 C++ API 生成 PDF
用于创建、编辑、操作和解析 PDF 文件的开源 C++ 库。
PDF-Writer 入门
构建库和示例应用程序的推荐方法是使用 CMake。您可以从 CMake 网站获得它。该库依赖于 Zlib、LibTiff、LibJpeg、FreeType 和 LibPng。这意味着在链接上下文中使用 PDF 库之前,您也应该编译它们。
也可以手动安装;直接从 GitHub 存储库下载最新版本文件。
通过 C++ 生成和修改 PDF
软件开发人员可以使用 PDF-Writer API 在他们自己的 C++ 应用程序中生成新的 PDF 文件。该库还方便开发人员根据自己的需要进行修改。您可以轻松嵌入 JPG、PNG 和 TIFF 图像,定义可重用对象,轻松嵌入现有 PDF 页面和文本。您可以使用现有的 PDF 页面,方法是将它们作为页面附加到 PDF 中,或者将它们用作部分以包含在新创建页面的图形中。通过使用以下步骤,您可以轻松生成 PDF。
用 C++ 生成 PDF
- 创建 PDFWriter 对象的实例
- 打开 PDF 文件进行写作
- 现在继续向 PDF 添加内容。
- 保存 PDF 文档
C++ 中的 PDF 生成
// Create an instance of the PDFWriter objec
PDFWriter pdfWriter;
// Open a PDF file for writing
pdfWriter.StartPDF("c:\\myFile.pdf",ePDFVersion13);
// ...add content to PDF file...
pdfWriter.EndPDF();
将新页面添加到 PDF 文档
使用 PDF-Writer 库,可以在 PDF 文档中添加新页面并设置其尺寸。它非常简单,只需几行 C++ 代码即可将新页面添加到 PDF 文件中。该库还使开发人员能够修改现有页面或删除页面。也可以将内容添加到已创建的 PDF 页面。
在 PDF 文档中嵌入图像
PDF-Writer 库支持嵌入 TIFF、PNG 和 JPG 图像以及 PDF 页面。有适用于任何图像类型的高级方法。除此之外,还有一些用于图像高级用法的低级方法。它通过本机 DCT 解码器提供对 JPG 图像的支持,通过使用 LibPng 解码的 PNG 和 TIFF 图像通过在 LibTiff 的帮助下进行编码/解码。
通过 C++ 在 PDF 中嵌入图像
pdfWriter.StartPDF("HighLevelImages.PDF",ePDFVersion13);
PDFPage* page = new PDFPage();
page->SetMediaBox(PDFRectangle(0,0,595,842));
PageContentContext* cxt = pdfWriter.StartPageContentContext(page);
cxt->DrawImage(10,10,"soundcloud_logo.jpg"));
pdfWriter.EndPageContentContext(cxt);
pdfWriter.WritePageAndRelease(page);
pdfWriter.EndPDF();
加入各种 PDF 文档
使用开源 PDF 组合器 API,用户只需几行代码即可快速组合多个 PDF 文档,而无需任何外部依赖。 PDF-Writer 使软件开发人员能够从现有的 PDF 文件生成全新的 PDF 文档。它可以帮助用户更轻松地存储和查看 PDF 文档。
通过 C++ 合并 PDF 页面内容
PDFPage* page = new PDFPage();
page->SetMediaBox(PDFRectangle(0,0,595,842));
PDFPageRange singlePageRange;
singlePageRange.mType = PDFPageRange::eRangeTypeSpecific;
singlePageRange.mSpecificRanges.push_back(ULongAndULong(0,0));
pdfWriter.MergePDFPagesToPage(page,"C:\\Other2PagePDF.PDF",singlePageRange);
pdfWriter.WritePageAndRelease(page);