開発者がこのC++ライブラリを使用してPDFドキュメントを変更する場合、実際に編集されるのはドキュメントオブジェクトモデル(DOM)です。したがって、DOMとして表されるPDFドキュメントにほとんどすべての変更を加えることができます。提供されているC++ SDKを使用すると、開発者はドキュメントを簡単に編集できます。テキストの変更、テーブルの更新、画像の追加などが可能です。 PDFをロードし、プログラムで必要な変更を加えて、結果を同じまたはサポートされている保存形式にエクスポートするだけです。
C++ ライブラリを使用すると、開発者はドキュメントオブジェクトモデル (DOM) を編集して PDF ドキュメントを直接変更できます。つまり、追加のソフトウェアをインストールする必要はありません。
PDF ファイルを編集する最も一般的なケースは、テキスト編集です。特定のソフトウェアソリューションを使用すると、ドキュメント内で C++ を使用してテキストを追加、変更、または削除できます。
もう1つの人気のある PDF 編集オプションはテーブル編集です。 C++ SDKを使用すると、テーブルとテーブルセル内のテキストを操作できます。
C++ 開発者は、テーブルとテーブルセルを追加または削除したり、それらのセル内のテキストを追加、編集、削除したりできます。
PDF でテキストとテーブルを編集する以外に、別の一般的なオプションがあります。C++ でドキュメントに画像を追加することです。 C++ 開発者は、DOMを使用して PDF ファイルにイメージを追加することもできます。
この強力な C++ SDKを試して、PDF ドキュメント編集のいくつかのオプションを評価してください。次の例を使用して、PDF ドキュメントを読み込み、いくつかの変更を加えます。テキストを追加するか、テキストを含むテーブルとテーブルセルを追加するか、PDF ドキュメントに画像を挿入します。
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.pdf"), 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"pdf")
)
);
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.pdf"), 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"pdf")
)
);
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.pdf"), 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.pdf"), 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"pdf")
)
);
auto convert = wordsApi->convertDocument(convertRequest);
GitHub Aspose.Words Cloud SDK for C++ クローンを作成します。 SDKの構築と構成の詳細については、 "How to use the SDK" セクションを参照してください。
必要なセキュリティクレデンシャルをすばやく取得してRESTAPIにアクセスするには、ドキュメントの次の Instructions に従ってください。
詳細については、 Repository Documentation を参照してください。