ViewerConfig

Opções do widget visualizador do cliente

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

Propriedades C#

TipoPropriedadePadrãoDescrição
boolShowThumbstrueExibir o painel de miniaturas.
boolAutoLoadfalseCarregar automaticamente após a inicialização. O fluxo normal de token chama View(token) explicitamente.
boolAutoFocustrueMover o foco/rolagem do navegador para o visualizador durante a inicialização.
boolAutoPageFocustrueManter a miniatura atual visível enquanto as páginas mudam.
intPageZoom100Porcentagem de zoom inicial.
intZoomStep10Porcentagem adicionada ou removida pelos comandos de zoom.
intMaxZoom300Porcentagem máxima de zoom.
boolShowToolTiptrueExibir a dica de posição da página enquanto rola.
stringToolTipPageText"Page "Prefixo usado na dica da página.
boolCacheEnabledfalseManter uma janela móvel de imagens de página na memória do navegador. Não utiliza localStorage.
boolLargeDocfalseAnexar elementos de página em lotes cronometrados para documentos grandes.
boolShowHyperlinksfalseRenderizar sobreposições de hiperlinks quando a configuração do servidor os extraiu.
boolFixedZoomtrueUsar uma porcentagem de zoom fixa 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. "/" é o manipulador DocImage.axd na raiz do site. Para uma aplicação em um diretório virtual, use o nome do diretório sem uma barra inicial / ("myapp" significa /myapp/DocImage.axd).
stringResPath"doconut-res/images"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.
boolRetryOn409falseRepetir solicitações de página que respondem "still rendering". DocImage.axd renderiza de forma síncrona e nunca envia esse sinal; deixe como false.
csharp
var config = new ViewerConfig
{
    ShowThumbs = true,
    AutoLoad = false,
    PageZoom = 100,
    MaxZoom = 300,
    FitType = "width",
    BasePath = "/",                 // "/" = o manipulador DocImage.axd na raiz do site (Web.config)
    ResPath = "doconut-res/images", // a pasta de imagens sob ResourcesPath, sem '/' inicial
    ShowHyperlinks = true
};
// Emita com viewer.RenderViewer("viewerEl", token, config) - veja a referência Viewer.

Emitindo um ViewerConfig com RenderViewer

Viewer.RenderViewer(elementId, token, config) transforma um ViewerConfig no script de inicialização do widget. Ele grava seis das propriedades acima — BasePath, ResPath, ShowThumbs, AutoLoad, PageZoom e FitType — e então chama View(token). As demais propriedades não são gravadas: para MaxZoom, ShowHyperlinks, as configurações de zoom ou qualquer callback, inicialize o widget você mesmo com as opções JavaScript abaixo. Veja Viewer para RenderViewer.

Mapeamento de C# para JavaScript

Não passe um ViewerConfig serializado diretamente para docViewer(...). A maioria das chaves do widget está em camelCase, enquanto três chaves estabelecidas de caminho/ajuste estão em 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 das miniaturas em pixels.
pageZoom / zoomStep / maxZoom100 / 10 / 200O maxZoom de 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 legado. Defina explicitamente: '/' para o manipulador na raiz do site.
ResPath""Defina explicitamente o caminho das imagens incorporadas.
cacheEnabled / cacheCount / cacheDelayfalse / 3 / 3Janela e atraso de pré‑carregamento de páginas em memória.
autoLoadfalseRecomenda‑se fluxo de token explícito.
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 confiar em 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: '/',
    ResPath: 'doconut-res/images',
    onViewerReady: function () {},
    onError: function (message) { console.error('DocViewer:', message); }
});
</script>

Retornos de chamada

CallbackArgumentosPropósito
onPageLoadingpageNumUma solicitação de página está iniciando.
onPageLoadedpageNumA imagem de uma página terminou de carregar.
onThumbnailClickedpageNumO usuário selecionou uma miniatura.
onPageClickedpageNumO usuário selecionou uma página.
onDoubleClicknoneO visualizador recebeu um duplo clique.
onViewerBusynoneO visualizador entrou em estado ocupado.
onViewerReadynoneInicialização concluída.
onViewerErrornoneO 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.
onThumbsShownnoneO painel de miniaturas tornou‑se visível.
onAnnLoadednoneDados de anotação carregados.
onAnnSavednoneDados de anotação salvos.
onAnnSaveErrornoneFalha ao salvar a anotação.
onAnnClosednoneInterface 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)
PesquisaCanSearch(), Search(...), SearchMatchCount(), SearchSummary(...), GotoSearchMatch(...)
AnotaçãoSaveAnnotations(), GetAnnotations(), PushAnnotations(...), CloseAnnotations(...), ShowAnnotations(...)
CopiarCopy(...), CopyPage(pageNumber), CopyMode(enabled)

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

Opções de nova tentativa

O widget também aceita retryOn409 e suas configurações de backoff (retryInitialDelayMs, retryBackoffFactor, retryMaxDelayMs, retryMaxAttempts, retryMaxTotalMs). Elas atendem implantações cujas páginas são produzidas em segundo plano. DocImage.axd renderiza cada página durante a requisição, portanto deixe retryOn409 desativado.

Lista de verificação de caminho

  • BasePath é '/' quando o manipulador DocImage.axd está na raiz do site — o atributo path do manipulador em Web.config decide onde ele responde. Em um diretório virtual, use o nome do diretório sem uma barra inicial / ('myapp', não '/myapp': o visualizador adiciona a barra, e //myapp/... é uma requisição para outro host).
  • DoconutOptions.ResourcesPath é onde o módulo de recursos serve os arquivos incorporados (/doconut-res por padrão).
  • ResPath aponta para sua subpasta images, também sem uma barra inicial / ('doconut-res/images'). Definir como 'doconut-res' faz com que todos os ícones retornem 404 enquanto o documento ainda é renderizado.
  • No MVC, routes.IgnoreRoute("doconut-res/{*pathInfo}") deve vir após ResourcesPath se você alterá-lo.
  • ExtractHyperlinks deve estar habilitado na configuração de formato do servidor antes que showHyperlinks possa exibir qualquer coisa.

Esta página foi útil?