クラウドストレージとコラボレーションプラットフォーム向けドキュメントビューア SDK の統合
← Back to Blog2 min read

クラウドストレージとコラボレーションプラットフォーム向けドキュメントビューア SDK の統合

クラウドストレージとコラボレーションプラットフォームと統合するドキュメントビューア SDK
クラウドストレージとコラボレーションプラットフォームと統合するドキュメントビューア SDK
ドキュメントビューア SDK をクラウドストレージやコラボレーションプラットフォームと統合することで、.NET アプリケーションからシームレスで安全、かつ検索可能なドキュメント体験を提供できます。Doconut—.NET バックエンド向けのユニバーサルドキュメントビューア—を使用すれば、PDF、Office ファイル、CAD 図面、画像をネイティブにレンダリングし、OCR による検索、リアルタイム注釈、印刷制御を追加でき、データは選択したクラウドまたはオンプレミス環境内に保持されます。本ガイドでは、シニア開発者やソフトウェアアーキテクト向けに、Doconut を Azure Blob、Amazon S3、Google Cloud Storage に接続し、Microsoft Teams、SharePoint、カスタム React ベースのワークスペースなどの共同ポータルを通じてビューアを公開する方法を示します。


なぜモダン .NET アプリにとってクラウドネイティブなドキュメント閲覧が重要なのか

単一の .NET Core で実現するクロスプラットフォーム一貫性

企業はデスクトップ専用のドキュメントツールから脱却し、Windows 上で動作する Web ファースト体験へとシフトしています。Doconut のサーバーサイドレンダリングエンジンは .NET 6 以降で動作し、基盤 OS に関係なくピクセルパーフェクトな出力を保証します。ビューアはストリームで動作するため、任意のクラウドバケットからファイルを取得し、そのまま Doconut ビューアコンポーネントに渡して、レンダリングされたページやサムネイルをクライアントに返すことができ、ディスクへの書き込みは不要です。

レイテンシと帯域幅の削減

ドキュメントが Azure Blob Storage に保存されている場合、クライアントが最初のページだけを見るためにファイル全体をダウンロードすると不要なレイテンシが発生します。Doconut はオンデマンドでサムネイル生成をサポートしており、まず低解像度プレビューを要求し、ユーザーがスクロールしたときにフルページレンダリングを取得できます。このパターンは数百メガバイトになることもある大型 CAD 図面(DWG、DXF)に特に有効です。

セキュリティ優先の処理

重い処理はすべてサーバー側で実行されます。Doconut の サーバーサイド処理 機能を利用すれば、機密 PDF、法的契約書、医療記録などをプライベート VNet や社内ファイアウォール内に保持したまま処理できます。サードパーティ SaaS を呼び出すことはなく、ビューアはブラウザ側エンジンに生データをストリームしません—生成した画像タイルや HTML スニペットだけをクライアントに送ります。


Doconut を主要クラウドストレージサービスに接続する方法

汎用的な統合アプローチ

  1. ドキュメントストリームを取得 – 選択したクラウドプロバイダー(Azure Blob、Amazon S3、Google Cloud Storage)の SDK を使用して、ファイルを Stream オブジェクトにダウンロードします。
  2. ストリームを Doconut に渡す – Doconut ビューアはストリームとオプションのレンダリング設定を受け取ります。これにより Web サーバー上で一時ファイルを作成する必要がなくなります。
  3. ビューアトークンを生成 – Doconut は現在のセッション用に開かれたドキュメントを一意に識別するトークンを返します。このトークンは JSON としてフロントエンドに返し、以降のページレンダリングや注釈リクエストで使用します。
  4. オンデマンドでページをレンダリング – フロントエンドはトークンとページ番号を指定して Doconut エンドポイントを呼び出し、画像または HTML フラグメントをストリームで受け取ります。

ワークフローがストリームのみで完結しているため、Azure 用コードを Amazon S3 や Google Cloud Storage 用に差し替える際は、ストリームを生成するクラウド SDK 呼び出しだけを変更すれば、残りの Doconut パイプラインはそのまま動作します。

マルチテナントストレージの取り扱い

SaaS DMS ではテナントごとに別々のバケットやプレフィックスを持つことが一般的です。Doconut がストリームで動作するため、実行時に正しいバケットを解決し、ドキュメントを開き、トークンを現在のユーザーのクレームに紐付けるだけで対応できます。Doconut の内部キャッシュ (IDistributedCache) は Redis や Azure Cache for Redis に設定でき、同一ページへの繰り返しリクエストは再レンダリングせずメモリから取得できます。


共同作業ワークフローでのリアルタイム注釈と OCR の有効化

注釈プラグイン:静的ビューアをレビュー拠点に変える

Doconut には Annotation Plugin が同梱されており、テキストのハイライト、付箋、フリーハンド形状の描画が可能です。ドキュメントを開いた後、ビューアから注釈マネージャを取得し、注釈オブジェクトを追加・変更し、その状態を XML として永続化します。XML をドキュメントレコードと共に保存すればバージョン管理されたレビュー履歴が実現し、次回開く際に XML をロードすれば正確なビジュアル状態が復元されます。

OCR 駆動の検索:スキャン PDF 用

スキャンされた契約書、領収書、医療画像は画像のみの PDF で提供されることが多いです。Doconut の Search Plugin はビューア設定で有効化するとサーバー側で自動的に OCR を実行します。OCR エンジンはサーバーサイドスタック内に留まるため、抽出テキストは保護された環境から外部に漏れません。OCR が完了したら検索 API を呼び出して一致するページ番号とバウンディングボックスを取得し、UI でハイライト表示できます。サーバー側で OCR を実行するため、抽出テキストを Azure Cognitive Search、Elasticsearch、その他任意の検索サービスにインデックス化し、リポジトリ全体に対する即時全文検索を提供することも可能です。

共有トークンによるコラボレーション

Teams や SharePoint との統合では、ドキュメント ID、ユーザー権限、タイムスタンプをエンコードした短命トークンを生成するのが一般的です。OpenDocument 呼び出しで返される Doconut のトークン文字列を JWT にラップするかキャッシュエントリに保存します。別ユーザーが共有リンクをクリックした際に同じトークンを使用してビューアを再構築すれば、注釈や OCR レイヤーが全員に共有されます。


Doconut による安全なサーバーサイド変換と印刷制御

多くの企業は Word、Excel、CAD ファイルを PDF に変換してアーカイブしたり、「承認済みのみ印刷」ポリシーを適用したりする必要があります。Doconut の Converter Plugin は Microsoft Office やサードパーティサービスを必要とせずにこれらのシナリオに対応します。サーバー上で変換 API を呼び出し、ソースファイルのパス(またはストリーム)と目的の出力形式を指定するだけで完了します。変換は完全にバックエンドで実行され、生成された PDF はドキュメントリポジトリに保存できます。

PDF が生成されたら、ビューア UI で Controlled Printing を有効にできます。Doconut は特定のドキュメントトークンに対して印刷権限を設定するメソッドを提供します。ユーザーが印刷ボタンをクリックすると、Doconut はフラグを確認し、印刷が許可されていれば印刷可能な画像ストリームを返し、許可されていなければ「印刷は無効です」というメッセージを返します。この方法により、ブラウザの印刷ダイアログをブロックするカスタム JavaScript が不要になります。

印刷アクティビティの監査

印刷リクエストは Doconut ミドルウェアを経由するため、ASP.NET Core のロギングパイプラインにフックして「誰がいつ何を印刷したか」を取得できます。監査エントリを SQL テーブルに保存するか、SIEM システムへ転送してコンプライアンスレポートに活用します。法務テックやヘルスケアソリューションで、すべてのドキュメントアクセスを追跡できることは重要です。


クロスプラットフォーム環境でのスケーリングとパフォーマンスのベストプラクティス

  1. 分散キャッシュを活用 – Doconut の内部ページタイルキャッシュは Redis、Azure Cache、任意の IDistributedCache 実装でバックエンドできます。キャッシュキーにドキュメントバージョンハッシュを含め、変換後に古い画像が返されるのを防ぎます。
  2. バルク変換はバックグラウンドジョブで実行 – 大規模アーカイブのオンボーディング時は、Hangfire や Azure Functions で変換タスクをキューイングします。Doconut ビューアクラスは IHostedService ワーカーと相性が良く、ストリーム受け取りとトークン返却に HTTP コンテキストは不要です。
  3. デバイス別に画像解像度を調整 – モバイル端末は ImageResolution を 150‑200 DPI に下げ、デスクトップは CAD の細部表示のため 300 DPI を要求できます。ユーザーエージェントやクライアント側設定に基づいて解像度を切り替えます。
  4. 注釈の遅延ロードを有効化 – 注釈 XML を別テーブルに保存し、ユーザーが注釈パネルを開いたときにのみロードします。これにより初回ペイロードが削減され、最初のページ描画が高速化します。
  5. メモリ使用量を監視 – 高解像度 CAD ページのレンダリングはメモリ集約的です。本番環境では .NET GC をサーバーモード (<gcServer enabled="true"/>) に設定し、レンダリングジョブが長時間走り続けないよう適切なタイムアウトを構成します。
  6. 静的アセットは CDN で配信 – ビューアの JavaScript と CSS バンドルは静的ファイルです。Azure CDN、CloudFront、Cloudflare などから配信すれば、特にグローバルに分散したチームでの初回ページロードが数ミリ秒単位で短縮されます。

これらの指針に従うことで、数千人規模の同時ユーザーを大陸横断でサポートしつつ、最初のページ表示レイテンシを 200 ms 未満に抑えることが可能です—多くのエンタープライズポータルが目指すベンチマークです。


Doconut の無料トライアルで素早く始める

最速で Doconut を評価するには、公式サイトから無料トライアルをダウンロードし、NuGet パッケージを新規 ASP.NET Core プロジェクトに追加してクイックスタートガイドに従います。数分で Azure Blob からドキュメントを取得し、注釈を有効化し、OCR 検索を実行し、安全なサーバーサイド変換を行える機能的なビューアが完成します。手順は Doconut のドキュメントをご参照の上、クラウドネイティブなドキュメント体験の構築を今すぐ始めましょう。

ドキュメントワークフローを変革したいですか? 今すぐ Doconut の無料トライアルにサインアップし、あらゆる .NET アプリケーションで安全・検索可能・共同作業が可能なドキュメント体験を簡単に提供できることをご体感ください。

#document viewer#.NET#cloud integration#collaboration#OCR#ドキュメントビューア#クラウド統合#コラボレーション