Створіть 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++
Розробники програмного забезпечення можуть використовувати PDF-Writer API для створення нового файлу PDF у своїх власних програмах C++. Бібліотека також допомагає розробникам змінювати її відповідно до власних потреб. Ви можете легко вставляти зображення JPG, PNG і TIFF, визначати багаторазові об’єкти, вставляти наявні PDF-сторінки, а також текст з легкістю. Ви можете використовувати існуючі сторінки PDF-файлів, додавши їх як сторінки до PDF-файлу або використавши їх як частини для включення в графіку новоствореної сторінки. Виконуючи наступні кроки, ви можете легко створити PDF.
Створіть PDF на C++
- Створіть екземпляр об’єкта 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-документів
Використовуючи Open Source PDF Combiner API, користувачі можуть швидко об’єднувати кілька 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);