Keď vývojári upravia dokument pomocou daného riešenia C++, v skutočnosti sa upravuje objektový model dokumentu (DOM). V dokumente reprezentovanom ako DOM je teda možné vykonať takmer akékoľvek zmeny. Pomocou poskytnutej súpravy C++ SDK môžu vývojári jednoducho upravovať dokument: upravovať text, aktualizovať tabuľky, pridávať obrázky atď. Stačí načítať Word, PDF alebo súbor v podporovanom formáte načítania, vykonať potrebné zmeny programovo a exportovať výsledok do podporovaného formátu uloženia.
Naša knižnica pre C++ umožňuje vývojárom upravovať dokument priamo úpravou jeho modelu objektu dokumentu (DOM), čo znamená, že nie je potrebné inštalovať žiadny ďalší softvér.
Je dôležité vedieť, že pomocou tohto riešenia C++ môžete upravovať dokument v akomkoľvek podporovanom formáte. Napríklad je možné načítať súbor vo PDF formátoch, DOCX, DOC, RTF, ODT, EPUB, HTML a iných a potom tento súbor upraviť a uložiť v rovnakom formáte alebo v akomkoľvek inom podporovanom formáte.
Najpopulárnejším prípadom na úpravu Word, PDF alebo akéhokoľvek iného dokumentu je úprava textu. S daným softvérovým riešením môžete pridávať, upravovať alebo mazať text pomocou C++ v rámci dokumentu.
Ďalšou populárnou možnosťou úpravy dokumentov je úprava tabuľky. Naša C++ SDK vám umožňuje pracovať s tabuľkami a textom v bunkách tabuľky.
Vývojári C++ môžu pridávať alebo odstraňovať bunky tabuľky a tabuľky, ako aj pridávať, upravovať a odstraňovať text v nich.
Okrem úpravy textu a tabuliek existuje ďalšia bežná možnosť: pridávanie obrázkov do dokumentu v C++. Vývojári C++ môžu tiež pridať obrázok do súboru pomocou DOM.
Vyskúšajte túto výkonnú súpravu C++ SDK a zhodnoťte niektoré možnosti úpravy dokumentov. Pomocou nasledujúceho príkladu načítajte dokument a vykonajte zmeny: pridajte text, pridajte tabuľku a bunku tabuľky s textom alebo vložte do dokumentu obrázok:
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é informácie o zostavovaní a konfigurácii SDK nájdete v časti "How to use the SDK".
Ak chcete rýchlo získať potrebné bezpečnostné poverenia a získať prístup k nášmu REST API, postupujte podľa týchto Instructions v dokumentácii.
Podrobnosti nájdete v Repository Documentation.