
Microsoft Word は、「比較」オプションをサポートしており、ユーザーは Word 文書を比較して、新しく追加された変更を識別できます。この機能は、Word 文書を並べてテキスト比較操作を実行できるため便利です。ただし、テキスト差異チェッカーのプログラム ソリューションは、はるかに高速かつ効率的で、一括テキスト差異操作を簡単に実行できます。この記事では、違いを見つけるために、REST-API を使用してテキスト比較操作を実行します。
テキスト比較API
Aspose.Words Cloud SDK for .NET を使用すると、主要な MS Word 形式 (DOC、DOCX、DOCM など) を作成、操作、および他のサポートされている形式に変換できます。同時に、Word 文書を比較して違いを強調表示する機能も提供します。SDK を使用するには、パッケージ マネージャー コンソールで次のコマンドを使用して NuGet ライブラリ からインストールしてください。
Install-Package Aspose.Words-Cloud
詳細については、次のリンクにアクセスして、Aspose.Cloud SDK のインストール方法 の詳細を確認してください。インストール後、Aspose.Cloud ダッシュボード にアクセスして無料アカウントを作成する必要があります。GitHub または Google アカウントでサインアップするか、新しいアカウントの作成 ボタンをクリックしてください。ページに表示されるクライアント資格情報は、以降のセクションで使用されます。
C# を使用してオンラインでテキストを比較する
以下に、C# .NET コード スニペットを使用して 2 つの Word 文書を比較する方法の詳細を説明する手順とコード スニペットを示します。
- まず、コードで ClientID と ClientSecret 情報を定義する必要があります。
- 次に、ClientID と ClientSecret の詳細を引数として指定して、Configuration クラスのオブジェクトを作成します。
- 3 番目に、WordsApi クラスのオブジェクトを作成し、Configuration インスタンスを引数として渡します。
- 次に、CompareData クラスのインスタンスを作成します。
- 結果のファイルで識別された人物の名前を具体的に識別するには、CompareData クラスの Author プロパティを使用します。
- CompareData クラスの ComparingWithDocument プロパティは、コンテンツを比較する対象ドキュメントを指定するために使用されます。
- ここで、入力/ソース ファイル、CompareData オブジェクト、および結果のファイル名を引数として受け取る CompareDocumentRequest クラスのインスタンスを作成します。
- 最後に、CompareDocument(..) メソッドを呼び出して比較操作を開始します。
String MyClientID = "c235e685-1aab-4cda-a95b-54afd63eb87f"; // Get Client Id from https://dashboard.aspose.cloud/
String MyClientSecret = "b8da4ee37494f2ef8da3c727f3a0acb9"; // Get Client Secret from https://dashboard.aspose.cloud/
// Configurationクラスのインスタンスを作成する
// パーソナライズされたクライアントIDとクライアントシークレットの詳細を入力してください
var config = new Configuration { ClientId = MyClientID, ClientSecret = MyClientSecret };
// Configurationインスタンスを使用してWordsAPIオブジェクトを初期化する
var wordsApi = new WordsApi(config);
// 最初の入力文書
string firstDocument = "file-sample.docx";
// 比較する2番目の文書
string secondFile = "file-sample-updated.docx";
// 結果ファイルの名前
string resultantFile = "Out_ComparedTestDocs.docx";
// CompareDataクラスのインスタンスを作成する
CompareData compareData = new CompareData();
// 相違点を識別するために著者名として使用される名前
compareData.Author = "Nayyer";
// 比較する文書を指定する
compareData.ComparingWithDocument = secondFile;
compareData.DateTime = DateTime.Now;
// ソース、比較するドキュメント、結果のファイル名を指定してリクエストインスタンスを作成します。
CompareDocumentRequest request = new CompareDocumentRequest(firstDocument, compareData, null, null, null, null, resultantFile);
// ドキュメントの比較を開始する
DocumentResponse result = wordsApi.CompareDocument(request);
上記の例で使用したサンプルファイルは、次のリンクからダウンロードできます。
cURL コマンドを使用して Word 文書を比較する
このセクションでは、cURL コマンドを使用して Word 文書を比較する手順を学習します。API は許可された担当者のみがアクセスできるため、クライアント ID とクライアント シークレットの詳細に基づいて JWT アクセス トークンを作成するには、次のコマンドを実行してください。
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=c235e685-1aab-4cda-a95b-54afd63eb87f&client_secret=b8da4ee37494f2ef8da3c727f3a0acb9" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
以下の cURL コマンドは、cURL コマンドを使用してオンラインでファイル比較を実行する方法を示しています。CompareDocument メソッドにアクセスし、この操作の結果が、編集およびフォーマットのリビジョンの数として変更履歴を含む出力ドキュメントに書き込まれます。出力ドキュメントの詳細を指定しない場合は、リビジョンが元のドキュメントに保存されることに注意してください。
curl -X PUT "https://api.aspose.cloud/v4.0/words/file-sample.docx/compareDocument?destFileName=ComparisonResult.docx" \
-H "accept: application/json"
-H "Authorization: Bearer <JWT Token>" \
-H "Content-Type: application/json" \
-d "{\"ComparingWithDocument\":\"file-sample-updated.docx\",\"Author\":\"Nayyer\",\"DateTime\":\"2021-04-27T16:50:55.869Z\",\"CompareOptions\":{\"IgnoreCaseChanges\":true,\"IgnoreTables\":true,\"IgnoreFields\":true,\"IgnoreFootnotes\":true,\"IgnoreComments\":true,\"IgnoreTextboxes\":true,\"IgnoreFormatting\":true,\"IgnoreHeadersAndFooters\":true,\"Target\":\"Current\"}}"
コマンドを実行すると、削除された情報が別途指定され、新しく追加された内容が黄色で強調表示されます。

画像 1: 元のドキュメントと変更されたドキュメントのプレビュー。

画像 2: テキスト比較のプレビュー。
結論
この記事では、Aspose.Words Cloud API を使用して Word 文書を比較する手順について説明しました。API は swagger インターフェイス からもアクセスできることに注意してください。また、当社の Cloud SDK はオープンソースであり、完全なソース コードは GitHub からダウンロードできます。
API が提供するその他の魅力的な機能の詳細については、製品の ドキュメント を参照することをお勧めします。お客様からのフィードバックは私たちにとって非常に重要です。サポート フォーラム からお気軽にお問い合わせください。
参照
以下の情報については、次のリンクをご覧ください。