Коли розробники змінюють документ за допомогою даного рішення C++, фактично редагується об’єктна модель документа (DOM). Таким чином, практично будь-які зміни можуть бути внесені в документ, представлений як DOM. Завдяки наданому C++ SDK розробники можуть легко редагувати документ: змінювати текст, оновлювати таблиці, додавати зображення тощо. Просто завантажте Word, PDF або файл у підтримуваному форматі завантаження, внесіть необхідні зміни програмно та експортуйте результат у підтримуваний формат збереження.
Наша бібліотека C++ дає розробникам можливість безпосередньо змінювати документ шляхом редагування його об'єктної моделі документа (DOM), що означає, що не потрібно встановлювати додаткове програмне забезпечення.
Важливо знати, що за допомогою цього рішення C++ ви можете редагувати документ у будь-якому підтримуваному форматі. Наприклад, можна завантажити файл у PDF, DOCX, DOC, RTF, ODT, EPUB, HTML та інших форматах, а потім змінити цей файл і зберегти його в тому ж форматі або в будь-якому іншому підтримуваному форматі.
Найпопулярнішим випадком для редагування Word, PDF або будь-якого іншого документа є редагування тексту. За допомогою даного програмного рішення ви можете додавати, змінювати або видаляти текст за допомогою C++ в документі.
Ще одним популярним варіантом редагування документів є редагування таблиці. Наш C++ SDK дозволяє працювати з таблицями та текстом у клітинках таблиці.
Розробники C++ можуть додавати або видаляти клітинки таблиці та таблиці, а також додавати, редагувати та видаляти текст всередині них.
Окрім редагування тексту та таблиць, є ще один поширений варіант: додавання зображень до документа в C++. Розробники C++ також можуть додати зображення у файл за допомогою DOM.
Спробуйте цей потужний C++ SDK та оцініть деякі параметри редагування документів. Використовуючи наступний приклад, завантажте документ і внесіть деякі зміни: додайте текст, додайте таблицю та клітинку таблиці з текстом або вставте зображення в документ:
using namespace aspose::words::cloud;
auto config = std::make_shared<ApiConfiguration>(L"####-####-####-####-####",
L"##################");
auto wordsApi = std::make_shared<WordsApi>(config);
auto requestDocument = std::shared_ptr<std::istream>(new std::ifstream(
std::filesystem::path(L"Input.docx"), std::istream::binary));
auto requestParagraph = std::make_shared<aspose::words::cloud::models::ParagraphInsert>();
requestParagraph->setText(std::make_shared<std::wstring>(L"Morbi enim nunc faucibus a."));
std::shared_ptr<requests::InsertParagraphOnlineRequest> insertParagraphRequest(
new requests::InsertParagraphOnlineRequest(
requestDocument, requestParagraph
)
);
auto insertParagraph = wordsApi->insertParagraphOnline(insertParagraphRequest);
std::shared_ptr<requests::ConvertDocumentRequest> convertRequest(
new requests::ConvertDocumentRequest(
insertParagraph->document->values.begin,
std::make_shared<std::wstring>(L"docx")
)
);
auto convert = wordsApi->convertDocument(convertRequest);
using namespace aspose::words::cloud;
auto config = std::make_shared<ApiConfiguration>(L"####-####-####-####-####",
L"##################");
auto wordsApi = std::make_shared<WordsApi>(config);
auto requestDocument = std::shared_ptr<std::istream>(new std::ifstream(
std::filesystem::path(L"Input.docx"), std::istream::binary));
auto requestTable = std::make_shared<aspose::words::cloud::models::TableInsert>();
requestTable->setColumnsCount(std::make_shared<int32_t>(1));
requestTable->setRowsCount(std::make_shared<int32_t>(2));
std::shared_ptr<requests::InsertTableOnlineRequest> insertTableRequest(
new requests::InsertTableOnlineRequest(
requestDocument, requestTable, std::make_shared<std::wstring>(L"")
)
);
auto insertTable = wordsApi->insertTableOnline(insertTableRequest);
std::shared_ptr<requests::ConvertDocumentRequest> convertRequest(
new requests::ConvertDocumentRequest(
insertTable->document->values.begin,
std::make_shared<std::wstring>(L"docx")
)
);
auto convert = wordsApi->convertDocument(convertRequest);
using namespace aspose::words::cloud;
auto config = std::make_shared<ApiConfiguration>(L"####-####-####-####-####",
L"##################");
auto wordsApi = std::make_shared<WordsApi>(config);
auto requestDocument = std::shared_ptr<std::istream>(new std::ifstream(
std::filesystem::path(L"Input1.docx"), std::istream::binary));
auto requestDrawingObject =
std::make_shared<aspose::words::cloud::models::DrawingObjectInsert>();
requestDrawingObject->setHeight(std::make_shared<double>(0));
requestDrawingObject->setLeft(std::make_shared<double>(0));
requestDrawingObject->setTop(std::make_shared<double>(0));
requestDrawingObject->setWidth(std::make_shared<double>(0));
requestDrawingObject->setRelativeHorizontalPosition(
std::make_shared<aspose::words::cloud::models::DrawingObjectInsert::RelativeHorizontalPosition>(
aspose::words::cloud::models::DrawingObjectInsert::RelativeHorizontalPosition::MARGIN));
requestDrawingObject->setRelativeVerticalPosition(
std::make_shared<aspose::words::cloud::models::DrawingObjectInsert::RelativeVerticalPosition>(
aspose::words::cloud::models::DrawingObjectInsert::RelativeVerticalPosition::MARGIN));
requestDrawingObject->setWrapType(
std::make_shared<aspose::words::cloud::models::DrawingObjectInsert::WrapType>(
aspose::words::cloud::models::DrawingObjectInsert::WrapType::INLINE));
auto requestImageFile = std::shared_ptr<std::istream>(new std::ifstream(
std::filesystem::path(L"Input2.docx"), std::istream::binary));
std::shared_ptr<requests::InsertDrawingObjectOnlineRequest> insertDrawingObjectRequest(
new requests::InsertDrawingObjectOnlineRequest(
requestDocument, requestDrawingObject, requestImageFile,
std::make_shared<std::wstring>(L"sections/0")
)
);
auto insertDrawingObject = wordsApi->insertDrawingObjectOnline(insertDrawingObjectRequest);
std::shared_ptr<requests::ConvertDocumentRequest> convertRequest(
new requests::ConvertDocumentRequest(
insertDrawingObject->document->values.begin,
std::make_shared<std::wstring>(L"docx")
)
);
auto convert = wordsApi->convertDocument(convertRequest);
Клонуйте Aspose.Words Cloud SDK for C++ з GitHub. Детальну інформацію про створення та налаштування SDK можна знайти в розділі "How to use the SDK".
Щоб швидко отримати необхідні облікові дані безпеки та отримати доступ до нашого REST API, дотримуйтесь цих Instructions у документації.
Зверніться до Repository Documentation, щоб побачити деталі.