В этом кратком руководстве мы узнаем, как создать PDF с помощью C++. Используя пример Создание PDF-файла на C++, можно легко создать PDF-файл за несколько вызовов API. Пример можно использовать в любой среде разработки MS Windows, поддерживающей C++.
Шаги по созданию PDF с помощью C++
- Включите библиотеку Aspose.Pdf for C++ с помощью диспетчера пакетов NuGet.
- Включить ссылку на пространство имен Aspose::Pdf
- Инициализировать объект документа для создания PDF из C++
- Инициализировать экземпляр TextFragment для установки текста и его свойств.
- Используя метод Save в С++, создайте PDF на диске
В C++ сгенерируйте документ PDF, выполнив несколько простых шагов. Этого можно добиться, создав пустой PDF-файл с помощью Document Class и добавив в него страницу. Затем текст PDF и его свойства задаются путем инициализации экземпляра TextBuilder Class. Сгенерированный файл PDF будет сохранен на диске с помощью метода Сохранить.
Код для создания PDF с использованием C++
#pragma once | |
#include <system/string.h> | |
#include <system/shared_ptr.h> | |
#include <stdio.h> | |
#include <system/console.h> | |
#include <system/environment.h> | |
#include <system/object_ext.h> | |
#include <Aspose.PDF.Cpp/License.h> | |
#include <Aspose.PDF.Cpp/Document.h> | |
#include <Aspose.PDF.Cpp/Page.h> | |
#include <Aspose.PDF.Cpp/PageCollection.h> | |
#include <Aspose.PDF.Cpp/Color.h> | |
#include <Aspose.PDF.Cpp/Text/TextFragment.h> | |
#include <Aspose.PDF.Cpp/Text/Position.h> | |
#include <Aspose.PDF.Cpp/Text/TextBuilder.h> | |
#include <Aspose.PDF.Cpp/Text/TextFragmentCollection.h> | |
#include <Aspose.PDF.Cpp/Text/TextFragmentState.h> | |
#include <Aspose.PDF.Cpp/Text/FontRepository.h> | |
using namespace System; | |
using namespace Aspose::Pdf; | |
using namespace Aspose::Pdf::Text; | |
void CreatePdfInCpp() | |
{ | |
// Set the license for Aspose.PDF for C++ to create PDF | |
SharedPtr<License> CreatePDFLicense = System::MakeObject<License>(); | |
CreatePDFLicense->SetLicense(u"Aspose.PdfCPP.lic"); | |
// Initialize document object create PDF from C++ | |
SharedPtr<Document> PdfDocument = MakeObject<Document>(); | |
// Add empty page in PDF | |
SharedPtr<Page> pdfPage = PdfDocument->get_Pages()->Add(); | |
// Initialize Text fragment and set text | |
SharedPtr <TextFragment> textFragments = MakeObject<TextFragment>(u"Knowledgebase Text"); | |
// Apply text related properties | |
textFragments->set_Position(MakeObject < Position>(100, 600)); | |
textFragments->get_TextState()->set_FontSize(12); | |
textFragments->get_TextState()->set_Font(FontRepository::FindFont(u"TimesNewRoman")); | |
textFragments->get_TextState()-> | |
set_BackgroundColor((MakeObject<Aspose::Pdf::Color>())->FromRgb(System::Drawing::Color::get_Wheat())); | |
textFragments->get_TextState()-> | |
set_ForegroundColor((MakeObject<Aspose::Pdf::Color>())->FromRgb(System::Drawing::Color::get_Red())); | |
// Instantiate TextBuilder object | |
SharedPtr < TextBuilder> textBuilders = MakeObject< TextBuilder>(pdfPage); | |
// Append added fragment to the PDF page | |
textBuilders->AppendText(textFragments); | |
// Create PDF using C++ | |
PdfDocument->Save(u"Generated_out.pdf"); | |
} |
В C++ генератор PDF может быть разработан с помощью простых вызовов API. Мы стали свидетелями того, как генерировать PDF с помощью C++ без какой-либо зависимости от других API или Adobe PDF. За несколько шагов нам удалось создать PDF-файл с нуля, вставив текст и установив соответствующие текстовые свойства.
В прошлой теме мы сосредоточились на как сгладить PDF-форму с помощью C++. В этом разделе рассказывается, как создать PDF-файл на C++, выполнив несколько простых шагов.