在 C++ SDK 中編輯 Word 或 PDF 文件

使用 REST API 以編程方式編輯 C++ 中的文件

當開發人員使用給定的 C++ 解決方案修改文檔時,實際編輯的是文檔對像模型 (DOM)。因此,幾乎可以對錶示為 DOM 的文檔進行任何更改。使用提供的 C++ SDK,開發人員可以輕鬆地編輯文檔:修改文本、更新表格、添加圖像等。只需以支持的加載格式加載您的 Word、PDF 或文件,以編程方式進行必要的更改並將結果導出為支持的保存格式。

看程式碼片段

使用 REST API 在 C++ 中編輯文檔

我們的 C++ 庫使開發人員能夠通過編輯文檔對像模型 (DOM) 直接修改文檔,這意味著無需安裝其他軟件。

重要的是要知道,使用這個 C++ 解決方案,您可以編輯任何受支持格式的文檔。例如,可以加載 PDF、DOCX、DOC、RTF、ODT、EPUB、HTML 等格式的文件,然後修改此文件並以相同格式或任何其他支持的格式保存。

在 C++ 中編輯文本

編輯 Word、PDF 或任何其他文檔的最流行案例是文本編輯。使用給定的軟件解決方案,您可以使用 C++ 在文檔中添加、修改或刪除文本。

在 C++ 中編輯表

另一個流行的文檔編輯選項是表格編輯。我們的 C++ SDK 允許您在表格單元格中處理表格和文本。

C++ 開發人員可以添加或刪除表格和表格單元格,以及在其中添加、編輯和刪除文本。

使用 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);
運行代碼
  
將代碼C++複製到剪貼板

如何在 C++ 中編輯文件

  1. 為 C++ 安裝"Aspose.Words Cloud"
  2. 將庫引用(導入庫)添加到您的 C++ 項目
  3. 在 C++ 中加載要編輯的文檔
  4. 在文檔開頭插入內容
  5. 從雲存儲下載結果文檔

C++ 庫使用文檔編輯

從 GitHub 克隆 Aspose.Words Cloud SDK for C++ 源代碼。您可以在 "How to use the SDK" 部分找到有關構建和配置 SDK 的詳細信息。

要快速獲取必要的安全憑證並訪問我們的 REST API,請按照文檔中的這些 Instructions 進行操作。

系統要求

請參閱 Repository Documentation 以查看詳細信息。

5%

訂閱 Aspose 產品更新

獲取直接發送到您的郵箱的每月通訊和優惠。

© Aspose Pty Ltd 2001-2024. 版權所有。