1. Продукти
  2.   PDF
  3.   C++
  4.   VersyPDF
 
  

Безплатен C++ PDF API за четене, писане, обединяване и криптиране на PDF файлове.

Водеща отворена C++ библиотека за генериране на PDF за C и C++. Тя предоставя пълен набор от функции за четене, създаване, редактиране, манипулиране и защита на PDF документи в кросплатформени среди.

Какво е библиотеката VersyPDF?

В света на софтуерната разработка способността да се генерират и манипулират PDF документи е често срещано изискване. VersyPDF е мощна, с отворен код C++/C библиотека, която предоставя пълен набор от инструменти за работа с PDF файлове. Независимо дали изграждате сложна система за управление на документи или просто трябва да добавите функционалност за експортиране на PDF към вашето приложение, VersyPDF ви покрива. Библиотеката осигурява много детайлен контрол върху текста, графиката, оформлението, шрифтовете, цветовете; подходяща за приложения, които се нуждаят от прецизен изход (например публикуване, автоматизирано генериране на документи). Библиотеката предоставя цялостно решение за работа с PDF форми. Можете да попълвате съществуващи форми, да четете стойностите на полетата във формата и дори да създавате нови полета от нулата.

VersyPDF е отворен, индустриално стабилен PDF библиотека за C и C++, разработена от Sybrex Systems. Целта й е да предостави на разработчиците пълен набор от инструменти за четене, създаване, редактиране, манипулиране и защита на PDF документи в крос‑платформени среди. Тя разполага с богата гама от функции, което я прави универсално решение за широк спектър от задачи, свързани с PDF. Библиотеката поддържа четене и запис на PDF документи, създаване и манипулиране на съдържание, вграждане на изображения в PDF документи, работа с шрифтове и текст, подобрена поддръжка на цветове и графика, създаване и редактиране на отметки, поддръжка на PDF криптиране, оптимизация на PDF файлове и др. Със своя обширен набор от функции и лесен за използване API, VersyPDF е отличен избор за всеки разработчик, който трябва да интегрира PDF функционалност в своите приложения.

Previous Next

Започване с VersyPDF

Препоръчителният начин за инсталиране на VersyPDF е чрез CMake. Моля, използвайте следната команда за гладка инсталация.

Инсталиране на VersyPDF чрез GitHub

 git clone  https://github.com/sybrexsys/VersyPDF.git

Можете също да го инсталирате ръчно; изтеглете най-новите файлове от изданието директно от GitHub хранилище.

Четене и писане на PDF документи чрез C++

Отвореният код VersyPDF включва поддръжка за създаване на нови PDF документи и четене на съществуващи PDF файлове в C++ приложение. Софтуерните разработчици могат да зареждат PDF документи от файлове или паметови буфери и да записват модифицирани или нови PDF‑и обратно във файл или памет с лекота. Това означава, че както входът, така и изходът са гъвкави. Следният пример демонстрира как да създадете прост PDF документ с една страница текст, използвайки C++ команди.

Как да създадем PDF документи и да добавим страница към тях чрез C++ API?

#include "versypdf.h"

int main()
{
    // Create a new PDF document
    CPDFDocument doc;
    doc.CreateNew();

    // Add a new page
    CPDFPage page = doc.AppendPage();

    // Set the font and draw some text
    page.BeginText();
    page.SetFont("Helvetica", 12);
    page.SetXY(100, 700);
    page.ShowText("Hello, VersyPDF!");
    page.EndText();

    // Save the document to a file
    doc.SaveToFile("hello.pdf");

    return 0;
}

Добавяне на изображения и шрифтове към PDF чрез C++ API

Отвореният код VersyPDF улеснява софтуерните разработчици при работа с изображения и шрифтове в PDF документи, използвайки C++ API. Библиотеката поддържа вграждане на често използвани формати за изображения, като TIFF, JPEG, PNG, BMP и други. Това е много полезно за включване на растрово съдържание (например снимки, сканирания). Следният пример демонстрира как софтуерните разработчици могат да вградят JPEG изображение в PDF документ в C++ приложения.

Как да вградим JPEG изображение в PDF документ в C++ приложения?

#include "versypdf.h"

int main()
{
    // Create a new PDF document
    CPDFDocument doc;
    doc.CreateNew();

    // Add a new page
    CPDFPage page = doc.AppendPage();

    // Load an image from a file
    CPDFImage image = doc.CreateImageFromFile("my_image.jpg");

    // Draw the image on the page
    page.DrawImage(image, 100, 500, 200, 150);

    // Save the document to a file
    doc.SaveToFile("image_example.pdf");

    return 0;
}
 

Сливане на PDF файлове и манипулиране на страници в PDF чрез C++

Библиотеката VersyPDF включва няколко функции за обединяване на различни PDF документи и манипулиране на страници в PDF документи чрез C++ библиотека. Библиотеката предоставя поддръжка за завъртане на страници, разделяне, обединяване, добавяне и изтриване на нежелани страници само с няколко реда код. Освен това, тя също поддържа вмъкване или добавяне на ново съдържание в съществуващи страници с лекота. Ето много полезен пример, който показва как да обедините два PDF файла, да добавите отметка и да приложите криптиране в C++ приложения.

Как да обедините два PDF файла, добавите отметка и приложите криптиране чрез C++?

#include "versypdf.h"

int main() {
    // Load existing PDFs
    VersyPDF::Document doc1, doc2;
    doc1.LoadFromFile("document1.pdf");
    doc2.LoadFromFile("document2.pdf");

    // Merge
    VersyPDF::Document merged = VersyPDF::Merge({ &doc1, &doc2 });

    // Add a bookmark to first page
    merged.AddBookmark("Start Here", /*pageIndex=*/0, /*destination=*/VersyPDF::Destination::FitPage);

    // Apply encryption: 256-bit AES, require password to open
    merged.SetSecurityHandler(VersyPDF::Security::AES256, /*ownerPwd=*/"ownerpass", /*userPwd=*/"userpass", /*permissions=*/VersyPDF::Permission::Print);

    // Save
    merged.Save("merged_encrypted.pdf");

    return 0;

Работа с PDF формуляри чрез C++

Отворената библиотека VersyPDF предоставя пълно решение за работа с PDF формуляри. Библиотеката включва различни функции за обработка на формуляри, като създаване на нови полета от нулата, попълване на съществуващи формуляри, четене на стойностите на полетата и много други. Ето много полезен пример, който демонстрира как софтуерните разработчици могат да попълнят прост PDF формуляр с едно текстово поле чрез C++.

Как да попълните проста PDF форма с едно текстово поле чрез C++ приложения?

#include "versypdf.h"

int main()
{
    // Load an existing PDF document with a form
    CPDFDocument doc;
    doc.LoadFromFile("form.pdf");

    // Get the form field by name
    CPDFFormField field = doc.GetFormField("my_text_field");

    // Set the value of the form field
    field.SetValue("This is the new value");

    // Save the modified document
    doc.SaveToFile("form_filled.pdf");

    return 0;
}
 Български