개발자가 지정된 C++ 솔루션으로 문서를 수정할 때 실제로 편집되는 것은 DOM(문서 개체 모델)입니다. 따라서 DOM으로 표시되는 문서는 거의 모든 변경이 가능합니다. 개발자는 제공된 C++ SDK를 사용하여 텍스트 수정, 테이블 업데이트, 이미지 추가 등 문서를 쉽게 편집할 수 있습니다. 지원되는 로드 형식으로 Word, PDF 또는 파일을 로드하고 프로그래밍 방식으로 필요한 변경을 수행하고 결과를 지원되는 저장 형식으로 내보내기만 하면 됩니다.
C++ 라이브러리는 개발자가 (DOM) 을 편집하여 문서를 직접 수정할 수 있는 기능을 제공하므로 추가 소프트웨어를 설치할 필요가 없습니다.
이 C++ 솔루션을 사용하여 지원되는 모든 형식의 문서를 편집할 수 있다는 것을 아는 것이 중요합니다. 예를 들어 PDF, DOCX, DOC, RTF, ODT, EPUB, HTML 및 기타 형식의 파일을 로드한 다음 이 파일을 수정하고 동일한 형식이나 지원되는 다른 형식으로 저장할 수 있습니다.
Word, PDF 또는 기타 문서를 편집하는 가장 일반적인 경우는 텍스트 편집입니다. 주어진 소프트웨어 솔루션으로 문서 내에서 C++ 를 사용하여 텍스트를 추가, 수정 또는 삭제할 수 있습니다.
또 다른 인기 있는 문서 편집 옵션은 표 편집입니다. C++ SDK를 사용하면 테이블 및 테이블 셀의 텍스트로 작업할 수 있습니다.
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);
GitHub에서 Aspose.Words Cloud SDK for C++ 복제합니다. "How to use the SDK" SDK 빌드 및 구성에 대한 자세한 정보를 찾을 수 있습니다.
필요한 보안 자격 증명을 빠르게 얻고 REST API에 액세스하려면 설명서의 Instructions 을 따르십시오.
자세한 내용은 Repository Documentation 를 참조하십시오.