ViewerConfig
クライアントビューアウィジェットのオプション
ViewerConfig (namespace Doconut) はブラウザビューアの外観と動作を記述します。ドキュメントの描画品質には影響しません。品質を制御したい場合はフォーマット設定を使用してください。C# クラスと長年使用されている JavaScript ウィジェットはデフォルトが異なるため、値は明示的にマッピングしてください。
C# プロパティ
| 型 | プロパティ | デフォルト | 説明 |
|---|---|---|---|
bool | ShowThumbs | true | サムネイルパネルを表示します。 |
bool | AutoLoad | false | 初期化後に自動的にロードします。通常のトークンフローでは View(token) を明示的に呼び出します。 |
bool | AutoFocus | true | 初期化時にブラウザのフォーカス/スクロールをビューアへ移動します。 |
bool | AutoPageFocus | true | ページが変わっても現在のサムネイルが見えるように保持します。 |
int | PageZoom | 100 | 初期ズーム率(パーセンテージ)。 |
int | ZoomStep | 10 | ズームコマンドで加算または減算されるパーセンテージ。 |
int | MaxZoom | 300 | 最大ズーム率(パーセンテージ)。 |
bool | ShowToolTip | true | スクロール中にページ位置ツールチップを表示します。 |
string | ToolTipPageText | "Page " | ページツールチップで使用されるプレフィックス。 |
bool | CacheEnabled | false | ブラウザメモリ内にページ画像の移動ウィンドウを保持します。localStorage は使用しません。 |
bool | LargeDoc | false | 大容量ドキュメント向けにページ要素をタイムバッチで追加します。 |
bool | ShowHyperlinks | false | サーバー設定で抽出されたハイパーリンクオーバーレイを描画します。 |
bool | FixedZoom | true | レスポンシブ再計算ではなく固定ズーム率を使用します。 |
int | FixedZoomPercent | 100 | デスクトップ用固定ズーム率。 |
int | FixedZoomPercentMobile | 75 | モバイル用固定ズーム率。 |
string | BasePath | "/" | ホストが UseDoconut() をマップするブランチ。 |
string | ResPath | "doconut-res" | ウィジェットが使用するリソースベース。通常は <ResourcesPath>/images を指します。 |
string | FitType | "width" | "width"、"height"、または自動フィットなしの場合は空文字。現在のウィジェットでは "page" は受け付けません。 |
bool | RetryOn409 | false | 非同期/分散ページ生成が 202 Accepted を返したときにポーリングを有効にします。互換性のため 409 も受け付けます。通常の同期ビューアでは不要です。 |
var config = new ViewerConfig
{
ShowThumbs = true,
AutoLoad = false,
PageZoom = 100,
MaxZoom = 300,
FitType = "width",
BasePath = "/doconut",
ResPath = "/doconut-res/images",
ShowHyperlinks = true
};C# から JavaScript へのマッピング
ViewerConfig を直接シリアライズして docViewer(...) に渡さないでください。ほとんどのウィジェットキーは camelCase ですが、3 つの確立されたパス/フィットキーは PascalCase のままです。
| C# | JavaScript |
|---|---|
ShowThumbs | showThumbs |
AutoLoad | autoLoad |
AutoFocus | autoFocus |
AutoPageFocus | autoPageFocus |
PageZoom | pageZoom |
ZoomStep | zoomStep |
MaxZoom | maxZoom |
ShowToolTip | showToolTip |
ToolTipPageText | toolTipPageText |
CacheEnabled | cacheEnabled |
LargeDoc | largeDoc |
ShowHyperlinks | showHyperlinks |
FixedZoom | fixedZoom |
FixedZoomPercent | fixedZoomPercent |
FixedZoomPercentMobile | fixedZoomPercentMobile |
BasePath | BasePath |
ResPath | ResPath |
FitType | FitType |
RetryOn409 | retryOn409 |
JavaScript のデフォルト
ウィジェットは C# クラスとは異なる古いデフォルトを持っています。以下の値は現在の docViewer.js 実装から取得しています。
| オプション | デフォルト | 備考 |
|---|---|---|
leftMinWidth / leftMaxWidth | 220 / 800 | サムネイルペインの幅の上下限。 |
showThumbs | true | 初期サムネイル表示状態。 |
autoFocus / autoPageFocus | true / false | autoPageFocus は C# のデフォルトと異なります。 |
thumbWidth / thumbHeight / thumbPadding | 150 / 200 / 10 | ピクセル単位のサムネイルジオメトリ。 |
pageZoom / zoomStep / maxZoom | 100 / 10 / 200 | JavaScript の maxZoom は C# の 300 とは異なります。 |
showToolTip / toolTipPageText | true / "Page " | ページ位置ツールチップ。 |
format / doc / AccessToken | "" / 0 / "" | 内部初期化値。通常は View(token) によって設定されます。 |
debugMode | false | 追加のクライアント診断情報。 |
FitType | "" | 指定がない限り自動フィットは行われません。 |
BasePath | "DocImage.axd" | 互換性維持のための歴史的クライアントデフォルト。ASP.NET Core ホストでは明示的にマッピングされたミドルウェアブランチを設定する必要があります。 |
ResPath | "" | 埋め込み画像パスに明示的に設定してください。 |
cacheEnabled / cacheCount / cacheDelay | false / 3 / 3 | メモリ内ページ事前読み込みウィンドウと遅延。 |
autoLoad | false | 明示的なトークンフローが推奨されます。 |
largeDoc | true | C# のデフォルトとは異なります。 |
fixedZoom | false | C# のデフォルトとは異なります。 |
fixedZoomPercent / fixedZoomPercentMobile | 100 / 50 | モバイル側の値は C# の 75 と異なります。 |
showHyperlinks | true | サーバー側で抽出されたオーバーレイが必要です。 |
重要な動作値はすべて明示的に設定し、いずれかのデフォルトに依存しないようにしてください。
<div id="divDocViewer"><div id="div_ctlDoc"></div></div>
<script>
const objViewer = $('#div_ctlDoc').docViewer({
showThumbs: true,
autoLoad: false,
autoFocus: true,
autoPageFocus: true,
pageZoom: 100,
zoomStep: 10,
maxZoom: 300,
FitType: 'width',
cacheEnabled: false,
largeDoc: false,
showHyperlinks: true,
fixedZoom: true,
fixedZoomPercent: 100,
fixedZoomPercentMobile: 75,
BasePath: '/doconut',
ResPath: '/doconut-res/images',
onViewerReady: function () {},
onError: function (message) { console.error('DocViewer:', message); }
});
</script>コールバック
| コールバック | 引数 | 目的 |
|---|---|---|
onPageLoading | pageNum | ページリクエストが開始されたことを通知します。 |
onPageLoaded | pageNum | ページ画像の読み込みが完了したことを通知します。 |
onThumbnailClicked | pageNum | ユーザーがサムネイルを選択したときに呼び出されます。 |
onPageClicked | pageNum | ユーザーがページを選択したときに呼び出されます。 |
onDoubleClick | none | ビューアがダブルクリックを受け取ったときに呼び出されます。 |
onViewerBusy | none | ビューアがビジー状態に入ったときに呼び出されます。 |
onViewerReady | none | 初期化が完了したときに呼び出されます。 |
onViewerError | none | ビューアがエラー状態に入ったときに呼び出されます。 |
onError | message | 操作がエラーメッセージを返したときに呼び出されます。 |
onCopy | data | テキストコピー用データが利用可能になったときに呼び出されます。 |
onAutoLoadStatus | pageNum | オートロードがページに進んだときに呼び出されます。 |
onThumbsShown | none | サムネイルパネルが表示されたときに呼び出されます。 |
onAnnLoaded | none | アノテーションデータが読み込まれたときに呼び出されます。 |
onAnnSaved | none | アノテーションデータが保存されたときに呼び出されます。 |
onAnnSaveError | none | アノテーション保存が失敗したときに呼び出されます。 |
onAnnClosed | none | アノテーション UI が閉じられたときに呼び出されます。 |
コールバックは高速に保ち、テレメトリは非同期で送信し、ページ描画をブロックしないようにしてください。
公開メソッドグループ
| グループ | 共通メソッド |
|---|---|
| ライフサイクル | View(token, accessToken?), Close(server?), Token(), Init(), IsLoaded() |
| ナビゲーション | GotoPage(page), ShowPage(page, focus?), Next(next), CurrentPage(), TotalPages() |
| ズームとフィット | Zoom(zoomIn), CurrentZoom(), FitType(value), Refit() |
| 向き | Rotate(page, angle), Flip(page, flipType) |
| サムネイル | HideThumbs(hide), ThumbSize(size), ReloadThumbs(width), ScrollToThumb(thumb) |
| 検索 | CanSearch(), Search(...), SearchMatchCount(), SearchSummary(...), GotoSearchMatch(...) |
| アノテーション | SaveAnnotations(), GetAnnotations(), PushAnnotations(...), CloseAnnotations(...), ShowAnnotations(...) |
| コピー | Copy(...), CopyPage(pageNumber), CopyMode(enabled) |
JavaScript ファイルには内部ヘルパーも含まれていますが、ここや機能ガイドで文書化された参照 UI が使用するメソッドのみを安定した統合ポイントとして扱ってください。
分散ページがまだレンダリング中の間のリトライ
retryOn409 は歴史的な名前のままです。非同期ページ生成用で、現在の 202 Accepted 応答と古い 409 Conflict シグナルの両方をリトライします。有効にすると、ウィジェットは次の JavaScript デフォルトでポーリングします。
| オプション | デフォルト |
|---|---|
retryInitialDelayMs | 250 |
retryBackoffFactor | 1.6 |
retryMaxDelayMs | 2500 |
retryMaxAttempts | 60 |
retryMaxTotalMs | 120000 |
通常のビューアでは無効のままにしてください。有効化しても、サポートされていない同期レンダリングを非同期に変えることはできません。
パスチェックリスト
DoconutOptions.MiddlewarePathは実際にマップするブランチを記述する必要があります。BasePathはそのブランチを指す必要があります。DoconutOptions.ResourcesPathは埋め込みリソースのルートです。ResPathは通常その/imagesサブフォルダを指します。ExtractHyperlinksはサーバー側のフォーマット設定で有効にしないと、showHyperlinksが何も表示できません。
このページは役に立ちましたか?