ViewerConfig

クライアントビューアウィジェットのオプション

ViewerConfig (namespace Doconut) はブラウザビューアの外観と動作を記述します。ドキュメントの描画品質には影響しません。品質を制御したい場合はフォーマット設定を使用してください。C# クラスと長年使用されている JavaScript ウィジェットはデフォルトが異なるため、値は明示的にマッピングしてください。

C# プロパティ

プロパティデフォルト説明
boolShowThumbstrueサムネイルパネルを表示します。
boolAutoLoadfalse初期化後に自動的にロードします。通常のトークンフローでは View(token) を明示的に呼び出します。
boolAutoFocustrue初期化時にブラウザのフォーカス/スクロールをビューアへ移動します。
boolAutoPageFocustrueページが変わっても現在のサムネイルが見えるように保持します。
intPageZoom100初期ズーム率(パーセンテージ)。
intZoomStep10ズームコマンドで加算または減算されるパーセンテージ。
intMaxZoom300最大ズーム率(パーセンテージ)。
boolShowToolTiptrueスクロール中にページ位置ツールチップを表示します。
stringToolTipPageText"Page "ページツールチップで使用されるプレフィックス。
boolCacheEnabledfalseブラウザメモリ内にページ画像の移動ウィンドウを保持します。localStorage は使用しません。
boolLargeDocfalse大容量ドキュメント向けにページ要素をタイムバッチで追加します。
boolShowHyperlinksfalseサーバー設定で抽出されたハイパーリンクオーバーレイを描画します。
boolFixedZoomtrueレスポンシブ再計算ではなく固定ズーム率を使用します。
intFixedZoomPercent100デスクトップ用固定ズーム率。
intFixedZoomPercentMobile75モバイル用固定ズーム率。
stringBasePath"/"ホストが UseDoconut() をマップするブランチ。
stringResPath"doconut-res"ウィジェットが使用するリソースベース。通常は <ResourcesPath>/images を指します。
stringFitType"width""width""height"、または自動フィットなしの場合は空文字。現在のウィジェットでは "page" は受け付けません。
boolRetryOn409false非同期/分散ページ生成が 202 Accepted を返したときにポーリングを有効にします。互換性のため 409 も受け付けます。通常の同期ビューアでは不要です。
csharp
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
ShowThumbsshowThumbs
AutoLoadautoLoad
AutoFocusautoFocus
AutoPageFocusautoPageFocus
PageZoompageZoom
ZoomStepzoomStep
MaxZoommaxZoom
ShowToolTipshowToolTip
ToolTipPageTexttoolTipPageText
CacheEnabledcacheEnabled
LargeDoclargeDoc
ShowHyperlinksshowHyperlinks
FixedZoomfixedZoom
FixedZoomPercentfixedZoomPercent
FixedZoomPercentMobilefixedZoomPercentMobile
BasePathBasePath
ResPathResPath
FitTypeFitType
RetryOn409retryOn409

JavaScript のデフォルト

ウィジェットは C# クラスとは異なる古いデフォルトを持っています。以下の値は現在の docViewer.js 実装から取得しています。

オプションデフォルト備考
leftMinWidth / leftMaxWidth220 / 800サムネイルペインの幅の上下限。
showThumbstrue初期サムネイル表示状態。
autoFocus / autoPageFocustrue / falseautoPageFocus は C# のデフォルトと異なります。
thumbWidth / thumbHeight / thumbPadding150 / 200 / 10ピクセル単位のサムネイルジオメトリ。
pageZoom / zoomStep / maxZoom100 / 10 / 200JavaScript の maxZoom は C# の 300 とは異なります。
showToolTip / toolTipPageTexttrue / "Page "ページ位置ツールチップ。
format / doc / AccessToken"" / 0 / ""内部初期化値。通常は View(token) によって設定されます。
debugModefalse追加のクライアント診断情報。
FitType""指定がない限り自動フィットは行われません。
BasePath"DocImage.axd"互換性維持のための歴史的クライアントデフォルト。ASP.NET Core ホストでは明示的にマッピングされたミドルウェアブランチを設定する必要があります。
ResPath""埋め込み画像パスに明示的に設定してください。
cacheEnabled / cacheCount / cacheDelayfalse / 3 / 3メモリ内ページ事前読み込みウィンドウと遅延。
autoLoadfalse明示的なトークンフローが推奨されます。
largeDoctrueC# のデフォルトとは異なります。
fixedZoomfalseC# のデフォルトとは異なります。
fixedZoomPercent / fixedZoomPercentMobile100 / 50モバイル側の値は C# の 75 と異なります。
showHyperlinkstrueサーバー側で抽出されたオーバーレイが必要です。

重要な動作値はすべて明示的に設定し、いずれかのデフォルトに依存しないようにしてください。

html
<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>

コールバック

コールバック引数目的
onPageLoadingpageNumページリクエストが開始されたことを通知します。
onPageLoadedpageNumページ画像の読み込みが完了したことを通知します。
onThumbnailClickedpageNumユーザーがサムネイルを選択したときに呼び出されます。
onPageClickedpageNumユーザーがページを選択したときに呼び出されます。
onDoubleClicknoneビューアがダブルクリックを受け取ったときに呼び出されます。
onViewerBusynoneビューアがビジー状態に入ったときに呼び出されます。
onViewerReadynone初期化が完了したときに呼び出されます。
onViewerErrornoneビューアがエラー状態に入ったときに呼び出されます。
onErrormessage操作がエラーメッセージを返したときに呼び出されます。
onCopydataテキストコピー用データが利用可能になったときに呼び出されます。
onAutoLoadStatuspageNumオートロードがページに進んだときに呼び出されます。
onThumbsShownnoneサムネイルパネルが表示されたときに呼び出されます。
onAnnLoadednoneアノテーションデータが読み込まれたときに呼び出されます。
onAnnSavednoneアノテーションデータが保存されたときに呼び出されます。
onAnnSaveErrornoneアノテーション保存が失敗したときに呼び出されます。
onAnnClosednoneアノテーション 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 デフォルトでポーリングします。

オプションデフォルト
retryInitialDelayMs250
retryBackoffFactor1.6
retryMaxDelayMs2500
retryMaxAttempts60
retryMaxTotalMs120000

通常のビューアでは無効のままにしてください。有効化しても、サポートされていない同期レンダリングを非同期に変えることはできません。

パスチェックリスト

  • DoconutOptions.MiddlewarePath は実際にマップするブランチを記述する必要があります。
  • BasePath はそのブランチを指す必要があります。
  • DoconutOptions.ResourcesPath は埋め込みリソースのルートです。
  • ResPath は通常その /images サブフォルダを指します。
  • ExtractHyperlinks はサーバー側のフォーマット設定で有効にしないと、showHyperlinks が何も表示できません。

このページは役に立ちましたか?