ViewerConfig

Opções do widget visualizador do cliente

ViewerConfig (namespace Doconut) descreve a aparência e o comportamento do visualizador no navegador. Não afeta a qualidade de renderização do documento; use uma configuração de formato para isso. A classe C# e o widget JavaScript de longa data têm padrões diferentes, portanto mapeie os valores explicitamente.

Propriedades C#

TipoPropriedadePadrãoDescrição
boolShowThumbstrueExibe o painel de miniaturas.
boolAutoLoadfalseCarrega automaticamente após a inicialização. O fluxo normal de token chama View(token) explicitamente.
boolAutoFocustrueMove o foco/rolagem do navegador para o visualizador durante a inicialização.
boolAutoPageFocustrueMantém a miniatura atual visível enquanto as páginas mudam.
intPageZoom100Percentual de zoom inicial.
intZoomStep10Percentual adicionado ou removido pelos comandos de zoom.
intMaxZoom300Percentual máximo de zoom.
boolShowToolTiptrueExibe a dica de posição da página enquanto rola.
stringToolTipPageText"Page "Prefixo usado na dica de página.
boolCacheEnabledfalseMantém uma janela móvel de imagens de página na memória do navegador. Não utiliza localStorage.
boolLargeDocfalseAnexa elementos de página em lotes cronometrados para documentos grandes.
boolShowHyperlinksfalseRenderiza sobreposições de hiperlink quando a configuração do servidor as extraiu.
boolFixedZoomtrueUsa um percentual de zoom fixo em vez de recalculação responsiva.
intFixedZoomPercent100Zoom fixo para desktop.
intFixedZoomPercentMobile75Zoom fixo para dispositivos móveis.
stringBasePath"/"Onde o visualizador envia solicitações de página. "/" corresponde a DocImage.axd na raiz do site; caso contrário, ao ramo onde o host mapeia UseDoconut(), sem uma barra inicial / ("doconut" significa /doconut/DocImage.axd).
stringResPath"doconut-res/images" (26.9.0; "doconut-res" antes)Pasta de onde o widget carrega suas próprias imagens: a pasta images sob ResourcesPath, sem uma barra inicial /.
stringFitType"width""width", "height" ou vazio para nenhum ajuste automático. "page" não é aceito pelo widget atual.
boolRetryOn409falseHabilita sondagem quando a produção de página assíncrona/distribuída responde 202 Accepted; 409 também é aceito para compatibilidade com servidores mais antigos. Não é necessário no visualizador síncrono normal.
csharp
var config = new ViewerConfig
{
    ShowThumbs = true,
    AutoLoad = false,
    PageZoom = 100,
    MaxZoom = 300,
    FitType = "width",
    BasePath = "doconut",           // sem barra inicial '/': o visualizador a adiciona ("/doconut" se tornaria //doconut, outro host)
    ResPath = "doconut-res/images",
    ShowHyperlinks = true
};

Mapeamento de C# para JavaScript

Não passe um ViewerConfig serializado diretamente para docViewer(...). A maioria das chaves do widget usa camelCase, enquanto três chaves estabelecidas de caminho/ajuste usam PascalCase.

C#JavaScript
ShowThumbsshowThumbs
AutoLoadautoLoad
AutoFocusautoFocus
AutoPageFocusautoPageFocus
PageZoompageZoom
ZoomStepzoomStep
MaxZoommaxZoom
ShowToolTipshowToolTip
ToolTipPageTexttoolTipPageText
CacheEnabledcacheEnabled
LargeDoclargeDoc
ShowHyperlinksshowHyperlinks
FixedZoomfixedZoom
FixedZoomPercentfixedZoomPercent
FixedZoomPercentMobilefixedZoomPercentMobile
BasePathBasePath
ResPathResPath
FitTypeFitType
RetryOn409retryOn409

Padrões de JavaScript

O widget tem padrões mais antigos que diferem da classe C#. Os valores a seguir provêm da implementação atual do docViewer.js.

OpçãoPadrãoObservações
leftMinWidth / leftMaxWidth220 / 800Limites de largura do painel de miniaturas.
showThumbstrueVisibilidade inicial das miniaturas.
autoFocus / autoPageFocustrue / falseautoPageFocus difere do padrão C#.
thumbWidth / thumbHeight / thumbPadding150 / 200 / 10Geometria da miniatura em pixels.
pageZoom / zoomStep / maxZoom100 / 10 / 200maxZoom do JavaScript difere do C# (300).
showToolTip / toolTipPageTexttrue / "Page "Tooltip de posição da página.
format / doc / AccessToken"" / 0 / ""Valores internos de inicialização; normalmente preenchidos por View(token).
debugModefalseDiagnósticos adicionais do cliente.
FitType""Nenhum ajuste automático a menos que seja fornecido.
BasePath"DocImage.axd"Padrão histórico do cliente mantido por compatibilidade. Hospedagens ASP.NET Core atuais devem defini‑lo explicitamente para o ramo de middleware mapeado.
ResPath""Definido explicitamente para o caminho das imagens incorporadas.
cacheEnabled / cacheCount / cacheDelayfalse / 3 / 3Janela e atraso de pré‑carregamento de páginas em memória.
autoLoadfalseRecomenda‑se fluxo explícito de token.
largeDoctrueDifere do padrão C#.
fixedZoomfalseDifere do padrão C#.
fixedZoomPercent / fixedZoomPercentMobile100 / 50Valor móvel difere do C# (75).
showHyperlinkstrueRequer extração no servidor para produzir sobreposições.

Defina todos os valores importantes de comportamento em vez de depender de qualquer conjunto de padrões:

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>

Callbacks

CallbackArgumentosPropósito
onPageLoadingpageNumUm pedido de página está começando.
onPageLoadedpageNumA imagem da página terminou de carregar.
onThumbnailClickedpageNumO usuário selecionou uma miniatura.
onPageClickedpageNumO usuário selecionou uma página.
onDoubleClicknenhumO visualizador recebeu um duplo clique.
onViewerBusynenhumO visualizador entrou em estado ocupado.
onViewerReadynenhumInicialização concluída.
onViewerErrornenhumO visualizador entrou em estado de erro.
onErrormessageUma operação retornou uma mensagem de erro.
onCopydataDados de cópia de texto estão disponíveis.
onAutoLoadStatuspageNumO carregamento automático avançou para uma página.
onThumbsShownnenhumO painel de miniaturas tornou‑se visível.
onAnnLoadednenhumDados de anotação carregados.
onAnnSavednenhumDados de anotação salvos.
onAnnSaveErrornenhumFalha ao salvar a anotação.
onAnnClosednenhumInterface de anotação fechada.

Mantenha os callbacks rápidos; envie telemetria de forma assíncrona e não bloqueie a renderização da página.

Grupos de métodos públicos

GrupoMétodos comuns
Ciclo de vidaView(token, accessToken?), Close(server?), Token(), Init(), IsLoaded()
NavegaçãoGotoPage(page), ShowPage(page, focus?), Next(next), CurrentPage(), TotalPages()
Zoom e ajusteZoom(zoomIn), CurrentZoom(), FitType(value), Refit()
OrientaçãoRotate(page, angle), Flip(page, flipType)
MiniaturasHideThumbs(hide), ThumbSize(size), ReloadThumbs(width), ScrollToThumb(thumb)
BuscaCanSearch(), Search(...), SearchMatchCount(), SearchSummary(...), GotoSearchMatch(...)
AnotaçãoSaveAnnotations(), GetAnnotations(), PushAnnotations(...), CloseAnnotations(...), ShowAnnotations(...)
CópiaCopy(...), CopyPage(pageNumber), CopyMode(enabled)

O arquivo JavaScript também contém auxiliares internos. Considere apenas os métodos usados pela UI de referência e documentados aqui ou nos guias de recursos como pontos de integração estáveis.

Repetir enquanto uma página distribuída ainda está renderizando

retryOn409 mantém seu nome histórico. É para produção assíncrona de páginas e repete a resposta de prontidão atual 202 Accepted assim como o sinal mais antigo 409 Conflict. Quando habilitado, o widget faz polling com esses padrões JavaScript:

OpçãoPadrão
retryInitialDelayMs250
retryBackoffFactor1.6
retryMaxDelayMs2500
retryMaxAttempts60
retryMaxTotalMs120000

Deixe desativado para o visualizador normal. Habilitá-lo não pode tornar uma renderização síncrona não suportada assíncrona.

Lista de verificação de caminho

  • DoconutOptions.MiddlewarePath deve descrever o branch que você realmente mapeia.
  • BasePath deve apontar para esse branch, escrito sem uma barra inicial / ('doconut', não '/doconut': o visualizador adiciona a barra, e //doconut/... é uma requisição para outro host).
  • DoconutOptions.ResourcesPath é a rota de recurso incorporado.
  • ResPath normalmente aponta para sua subpasta images, também sem uma barra inicial / ('doconut-res/images').
  • ExtractHyperlinks deve estar habilitado na configuração de formato do servidor antes que showHyperlinks possa exibir qualquer coisa.

Esta página foi útil?