เมื่อนักพัฒนาแก้ไขเอกสาร DOCX ด้วยไลบรารี C++ นี้ สิ่งที่กำลังแก้ไขจริงๆ คือ Document Object Model (DOM) ดังนั้น การเปลี่ยนแปลงเกือบทั้งหมดในเอกสาร DOCX ที่แสดงเป็น DOM ด้วย C++ SDK ที่มีให้ นักพัฒนาสามารถแก้ไขเอกสารได้อย่างง่ายดาย เช่น แก้ไขข้อความ อัปเดตตาราง เพิ่มรูปภาพ และอื่นๆ เพียงโหลด DOCX ทำการเปลี่ยนแปลงที่จำเป็นโดยทางโปรแกรม และส่งออกผลลัพธ์เป็นรูปแบบเดียวกันหรือรูปแบบการบันทึกที่รองรับ
ไลบรารี C++ ของเราช่วยให้นักพัฒนาสามารถแก้ไขเอกสาร DOCX ได้โดยตรงโดยแก้ไข Document Object Model (DOM) ซึ่งหมายความว่าไม่จำเป็นต้องติดตั้งซอฟต์แวร์เพิ่มเติม
กรณีที่นิยมที่สุดในการแก้ไขไฟล์ DOCX คือการแก้ไขข้อความ ด้วยโซลูชันซอฟต์แวร์ที่ให้มา คุณสามารถเพิ่ม แก้ไข หรือลบข้อความโดยใช้ C++ ภายในเอกสารได้
อีกตัวเลือกการแก้ไข DOCX ยอดนิยมคือการแก้ไขตาราง C++ SDK ของเราช่วยให้คุณทำงานกับตารางและข้อความในเซลล์ของตารางได้
นักพัฒนา C++ สามารถเพิ่มหรือลบตารางและเซลล์ตาราง ตลอดจนเพิ่ม แก้ไข และลบข้อความภายใน
นอกจากการแก้ไขข้อความและตารางใน DOCX แล้ว ยังมีอีกตัวเลือกทั่วไป: การเพิ่มรูปภาพลงในเอกสารใน C++ นักพัฒนา C++ สามารถเพิ่มรูปภาพลงในไฟล์ DOCX โดยใช้ DOM
ลองใช้ C++ SDK อันทรงพลังนี้และประเมินตัวเลือกบางอย่างในการแก้ไขเอกสาร DOCX ใช้ตัวอย่างต่อไปนี้ โหลดเอกสาร DOCX ของคุณ และทำการเปลี่ยนแปลงบางอย่าง: เพิ่มข้อความ เพิ่มตารางและเซลล์ตารางที่มีข้อความ หรือแทรกรูปภาพลงในเอกสาร DOCX:
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++ จาก GitHub คุณสามารถค้นหาข้อมูลโดยละเอียดเกี่ยวกับการสร้างและกำหนดค่า SDK ได้ในส่วน "How to use the SDK"
หากต้องการรับข้อมูลรับรองความปลอดภัยที่จำเป็นอย่างรวดเร็วและเข้าถึง REST API ของเรา โปรดปฏิบัติตาม Instructions เหล่านี้ในเอกสารประกอบ
อ้างถึง Repository Documentation เพื่อดูรายละเอียด
คุณสามารถดำเนินการแก้ไขสำหรับรูปแบบไฟล์อื่นๆ ได้: