Генерация PDF через Open Source C++ API
Библиотека C++ с открытым исходным кодом для создания, редактирования, обработки и анализа PDF-файлов.
Что такое PDF-Writer?
PDF-Writer — это библиотека C++ с открытым исходным кодом, которая полностью поддерживает создание, редактирование, обработку и анализ PDF-файлов, а также потоков. Библиотека была разработана с использованием принципиального «одноразового» метода создания PDF-файлов. Вот почему он работает быстро и использует мало памяти независимо от размера файла. Поэтому лучше всего создавать небольшие PDF-файлы или генерировать более крупные PDF-документы.
Добавление контента в PDF-файл всегда очень важно и помогает разработчикам создавать собственные PDF-файлы. Библиотека включает поддержку нескольких важных функций для обработки файлов PDF, таких как создание страниц PDF, операторы PDF для рисования содержимого, встраивание изображений JPG или PNG и TIFF, изменение PDF, объединение или разделение PDF-файлов, рендеринг PDF-файлов, извлечение данных из PDF. , поддержка текста Unicode, поддержка шрифтов TrueType и OpenType и многое другое.
Начало работы с PDF-Writer
Рекомендуемый метод сборки библиотеки и примера приложения — использование CMake. вы можете получить его с веб-сайта CMake. Библиотека зависит от Zlib, LibTiff, LibJpeg, FreeType и LibPng. Это означает, что вы также должны скомпилировать их, прежде чем использовать библиотеку PDF в связанном контексте.
Вы также можете установить его вручную; загрузите файлы последней версии напрямую из репозитория GitHub.
Генерация и модификация PDF с помощью C++
Разработчики программного обеспечения могут использовать API PDF-Writer для создания нового файла PDF в своих собственных приложениях C++. Библиотека также позволяет разработчикам изменять ее в соответствии со своими потребностями. Вы можете легко вставлять изображения JPG, PNG и TIFF, определять многократно используемые объекты, легко вставлять существующие страницы PDF, а также текст. Вы можете использовать существующие страницы PDF-файлов, добавляя их как страницы к PDF-файлу или используя их как части для включения в графику вновь созданной страницы. Используя следующие шаги, вы можете легко создать PDF.
Сгенерировать PDF на С++
- Создайте экземпляр объекта PDFWriter
- Откройте файл PDF для записи
- Теперь продолжайте и добавьте содержимое в PDF.
- Сохранить PDF-документ
Генерация PDF на C++
// 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. Существуют высокоуровневые методы, общие для любого типа изображения. Кроме того, существуют методы более низкого уровня для расширенного использования изображений. Он обеспечил поддержку изображений JPG с помощью собственного декодера DCT, PNG с помощью декодирования с помощью LibPng и изображений TIFF с помощью кодирования/декодирования с помощью LibTiff.
Встраивание изображений в PDF через C++
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-документов
Используя API-интерфейс объединения PDF с открытым исходным кодом, пользователи могут быстро объединять несколько документов PDF без каких-либо внешних зависимостей, используя всего пару строк кода. PDF-Writer дает разработчикам программного обеспечения возможность создавать совершенно новые PDF-документы из существующих PDF-файлов. Это помогает пользователям легче хранить и просматривать PDF-документ.
Слияние содержимого страниц PDF с помощью C++
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);