Když vývojáři upravují DOCX dokument pomocí této knihovny C++, ve skutečnosti se upravuje objektový model dokumentu (DOM). V DOCX dokumentu reprezentovaném jako DOM lze tedy provést téměř jakékoli změny. S dodanou sadou C++ SDK mohou vývojáři snadno upravovat dokument: upravovat text, aktualizovat tabulky, přidávat obrázky a tak dále. Stačí načíst DOCX soubor, provést potřebné změny programově a exportovat výsledek do stejného nebo jakéhokoli podporovaného formátu uložení.
Naše C++ knihovna dává vývojářům možnost upravovat DOCX dokument přímo úpravou jeho Document Object Model (DOM), což znamená, že není třeba instalovat žádný další software.
Nejoblíbenějším případem úpravy DOCX souboru je úprava textu. S daným softwarovým řešením můžete v dokumentu přidávat, upravovat nebo mazat text pomocí C++.
Další oblíbenou možností úpravy DOCX je úprava tabulky. Naše C++ SDK umožňuje pracovat s tabulkami a textem v buňkách tabulky.
Vývojáři C++ mohou přidávat nebo odebírat tabulky a buňky tabulek, stejně jako přidávat, upravovat a odstraňovat text v nich.
Kromě úpravy textu a tabulek v DOCX existuje další běžná možnost: přidávání obrázků do dokumentu ve C++. Vývojáři C++ mohou také přidat obrázek do DOCX souboru pomocí DOM.
Vyzkoušejte tuto výkonnou sadu C++ SDK a zhodnoťte některé možnosti úpravy DOCX dokumentů. Pomocí následujícího příkladu načtěte DOCX dokument a proveďte některé změny: přidejte text, přidejte tabulku a buňku tabulky s textem nebo vložte obrázek do DOCX dokumentu:
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);
Clone Aspose.Words Cloud SDK for C++ z GitHubu. Podrobné informace o sestavení a konfiguraci SDK naleznete v části "How to use the SDK".
Chcete-li rychle získat potřebné bezpečnostní údaje a získat přístup k našemu REST API, postupujte podle těchto Instructions v dokumentaci.
Podrobnosti naleznete v Repository Documentation.
Operaci úprav můžete provést pro jiné formáty souborů: