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

なぜモダン .NET アプリにとってクラウドネイティブなドキュメント閲覧が重要か
単一の .NET コアでのクロスプラットフォーム一貫性
エンタープライズはデスクトップ専用のドキュメントツールから脱却し、Windows 上で動作する Web ファースト体験を採用しています。Doconut のサーバーサイドレンダリングエンジンは .NET 6 以降で動作し、基盤となる OS に関係なく同一のピクセルパーフェクトな出力を保証します。ビューアはストリームで動作するため、任意のクラウドバケットからファイルを取得し、直接 Doconut ビューアコンポーネントに渡し、レンダリングされたページやサムネイルをクライアントに返すことができ、ディスクに書き込む必要がありません。
レイテンシと帯域幅の削減
ドキュメントが Azure Blob Storage に保存されている場合、最初のページだけを見るためにファイル全体をクライアントにダウンロードすると不要なレイテンシが発生します。Doconut はオンデマンドでサムネイルを生成できるため、まず低解像度プレビューを要求し、ユーザーがスクロールしたときにのみフルページのレンダリングを取得できます。このパターンは数百メガバイトに達する大規模な CAD 図面(DWG、DXF)に特に有効です。
セキュリティ優先の処理
すべての重い処理はサーバー側で行われます。Doconut の サーバーサイド処理 機能を利用すれば、機密性の高い PDF、契約書、医療記録などをプライベート VNet や社内ファイアウォールの背後に保持できます。サードパーティ SaaS を呼び出すことはなく、ビューアはブラウザ側エンジンに生データをストリームせず、生成した画像タイルや HTML スニペットだけを返します。
Doconut を一般的なクラウドストレージサービスに接続する
一般的な統合アプローチ
- ドキュメントストリームを取得 – 選択したクラウドプロバイダー(Azure Blob、Amazon S3、Google Cloud Storage)の SDK を使用してファイルを
Streamオブジェクトにダウンロードします。 - ストリームを Doconut に渡す – Doconut ビューアはストリームとオプションのレンダリング設定を受け取ります。これにより、Web サーバー上で一時ファイルを作成する必要がなくなります。
- ビューアートークンを生成 – Doconut は現在のセッションで開かれたドキュメントを一意に識別するトークンを返します。そのトークンは JSON としてフロントエンドに返し、以降のページレンダリングや注釈リクエストに使用できます。
- オンデマンドでページをレンダリング – フロントエンドはトークンと希望するページ番号を指定して Doconut エンドポイントを呼び出します。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 をロードすれば正確なビジュアル状態が復元されます。
スキャンされた PDF の OCR 検索
スキャンされた契約書、領収書、医療画像は画像のみの 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 システムへ転送してコンプライアンスレポートに利用できます。法務テックや医療ソリューションで、すべてのドキュメントアクセスを追跡できることは重要です。
クロスプラットフォーム環境でのスケーリングとパフォーマンスのベストプラクティス
- 分散キャッシュを活用 – Doconut の内部ページタイルキャッシュは Redis、Azure Cache、または任意の
IDistributedCache実装でバックアップできます。キャッシュキーにドキュメントバージョンハッシュを含め、変換後に古い画像が配信されるのを防止します。 - バルク変換はバックグラウンドジョブで実行 – 大規模アーカイブのオンボーディング時は、Hangfire や Azure Functions で変換タスクをキューイングします。Doconut ビューアクラスは
IHostedServiceワーカーと相性が良く、ストリームを受け取りトークンを返すだけで HTTP コンテキストを必要としません。 - デバイス別に画像解像度を調整 – モバイル端末は
ImageResolutionを 150‑200 DPI に下げ、デスクトップワークステーションは CAD の細部表示のため 300 DPI を要求できます。ユーザーエージェントやクライアント側設定に基づいて解像度を切り替えます。 - 注釈の遅延読み込みを有効化 – 注釈 XML を別テーブルに保存し、ユーザーが注釈パネルを開いたときにのみロードします。これにより初回ペイロードが削減され、最初のページ描画が高速化します。
- メモリ使用量を監視 – 高解像度 CAD ページのレンダリングはメモリ集約的です。プロダクション環境では .NET GC をサーバーモード (
<gcServer enabled="true"/>) に設定し、レンダリングジョブが長時間走り続けないよう適切なタイムアウトを構成します。 - 静的アセットに CDN を適用 – ビューアの JavaScript と CSS バンドルは静的ファイルです。Azure CDN、CloudFront、Cloudflare などから配信すれば、特にグローバルに分散したチームでの初回ページロードが数ミリ秒単位で短縮されます。
これらの指針に従えば、数千人規模の同時ユーザーを大陸横断でサポートしつつ、最初のページ表示レイテンシを 200 ms 未満に抑えることが可能です。多くのエンタープライズポータルが目指すベンチマークです。
Doconut の無料トライアルで迅速に開始する
Doconut を評価する最速の方法は、公式サイトから無料トライアルをダウンロードし、NuGet パッケージを新規 ASP.NET Core プロジェクトに追加してクイックスタートガイドに従うことです。数分で Azure Blob からドキュメントを取得し、注釈を有効化し、OCR 検索を実行し、安全なサーバーサイド変換を行える機能的なビューアが完成します。手順は Doconut のドキュメントに詳しく掲載されているので、今すぐクラウドネイティブなドキュメント体験の構築を始めましょう。
ドキュメントワークフローを変革する準備はできましたか? 今すぐ Doconut の無料トライアルにサインアップし、任意の .NET アプリケーションで安全・検索可能・共同作業が可能なドキュメント体験を簡単に提供できることを体感してください。