Când dezvoltatorii modifică un document cu soluția C++ dată, ceea ce este de fapt editat este Modelul obiectului documentului (DOM). Astfel, aproape orice modificări pot fi aduse documentului reprezentat ca DOM. Cu SDK ul C++ furnizat, dezvoltatorii pot edita cu ușurință un document: modificați textul, actualizați tabelele, adăugați imagini și așa mai departe. Încărcați Word, PDF ul sau fișierul într-un format de încărcare acceptat, faceți modificările necesare în mod programatic și exportați rezultatul într-un format de salvare acceptat.
Biblioteca noastră C++ oferă dezvoltatorilor posibilitatea de a modifica direct un document prin editarea modelului de obiect al documentului (DOM), ceea ce înseamnă că nu trebuie instalat niciun software suplimentar.
Este important de știut că folosind această soluție C++, puteți edita un document în orice format acceptat. De exemplu, este posibil să încărcați un fișier în PDF, DOCX, DOC, RTF, ODT, EPUB, HTML și alte formate, apoi modificați acest fișier și salvați-l în același format sau în orice alt format acceptat.
Cel mai popular caz de editare Word, PDF sau orice alt document este editarea textului. Cu soluția software dată, puteți adăuga, modifica sau șterge text folosind C++ în document.
O altă opțiune populară de editare a documentelor este editarea tabelelor. SDK ul nostru C++ vă permite să lucrați cu tabele și text în celulele tabelului.
Dezvoltatorii C++ pot adăuga sau elimina celule de tabel și tabel, precum și pot adăuga, edita și elimina text din ele.
Pe lângă editarea textului și a tabelelor, există o altă opțiune comună: adăugarea de imagini într-un document în C++. Dezvoltatorii C++ pot adăuga, de asemenea, o imagine într-un fișier folosind DOM.
Încercați acest puternic C++ SDK și evaluați câteva opțiuni în editarea documentelor. Folosind următorul exemplu, încărcați documentul și efectuați câteva modificări: adăugați text, adăugați un tabel și o celulă de tabel cu text sau inserați o imagine în document:
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);
Clonează Aspose.Words Cloud SDK for C++ din GitHub. Puteți găsi informații detaliate despre construirea și configurarea SDK ului în secțiunea "How to use the SDK".
Pentru a obține rapid acreditările de securitate necesare și pentru a accesa API ul nostru REST, vă rugăm să urmați aceste Instructions din documentație.
Consultați Repository Documentation pentru a vedea detaliile.