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#
| Tipo | Propriedade | Padrão | Descrição |
|---|---|---|---|
bool | ShowThumbs | true | Exibe o painel de miniaturas. |
bool | AutoLoad | false | Carrega automaticamente após a inicialização. O fluxo normal de token chama View(token) explicitamente. |
bool | AutoFocus | true | Move o foco/rolagem do navegador para o visualizador durante a inicialização. |
bool | AutoPageFocus | true | Mantém a miniatura atual visível enquanto as páginas mudam. |
int | PageZoom | 100 | Percentual de zoom inicial. |
int | ZoomStep | 10 | Percentual adicionado ou removido pelos comandos de zoom. |
int | MaxZoom | 300 | Percentual máximo de zoom. |
bool | ShowToolTip | true | Exibe a dica de posição da página enquanto rola. |
string | ToolTipPageText | "Page " | Prefixo usado na dica de página. |
bool | CacheEnabled | false | Mantém uma janela móvel de imagens de página na memória do navegador. Não utiliza localStorage. |
bool | LargeDoc | false | Anexa elementos de página em lotes cronometrados para documentos grandes. |
bool | ShowHyperlinks | false | Renderiza sobreposições de hiperlink quando a configuração do servidor as extraiu. |
bool | FixedZoom | true | Usa um percentual de zoom fixo em vez de recalculação responsiva. |
int | FixedZoomPercent | 100 | Zoom fixo para desktop. |
int | FixedZoomPercentMobile | 75 | Zoom fixo para dispositivos móveis. |
string | BasePath | "/" | 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). |
string | ResPath | "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 /. |
string | FitType | "width" | "width", "height" ou vazio para nenhum ajuste automático. "page" não é aceito pelo widget atual. |
bool | RetryOn409 | false | Habilita 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. |
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 |
|---|---|
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 |
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ção | Padrão | Observações |
|---|---|---|
leftMinWidth / leftMaxWidth | 220 / 800 | Limites de largura do painel de miniaturas. |
showThumbs | true | Visibilidade inicial das miniaturas. |
autoFocus / autoPageFocus | true / false | autoPageFocus difere do padrão C#. |
thumbWidth / thumbHeight / thumbPadding | 150 / 200 / 10 | Geometria da miniatura em pixels. |
pageZoom / zoomStep / maxZoom | 100 / 10 / 200 | maxZoom do JavaScript difere do C# (300). |
showToolTip / toolTipPageText | true / "Page " | Tooltip de posição da página. |
format / doc / AccessToken | "" / 0 / "" | Valores internos de inicialização; normalmente preenchidos por View(token). |
debugMode | false | Diagnó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 / cacheDelay | false / 3 / 3 | Janela e atraso de pré‑carregamento de páginas em memória. |
autoLoad | false | Recomenda‑se fluxo explícito de token. |
largeDoc | true | Difere do padrão C#. |
fixedZoom | false | Difere do padrão C#. |
fixedZoomPercent / fixedZoomPercentMobile | 100 / 50 | Valor móvel difere do C# (75). |
showHyperlinks | true | Requer 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:
<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
| Callback | Argumentos | Propósito |
|---|---|---|
onPageLoading | pageNum | Um pedido de página está começando. |
onPageLoaded | pageNum | A imagem da página terminou de carregar. |
onThumbnailClicked | pageNum | O usuário selecionou uma miniatura. |
onPageClicked | pageNum | O usuário selecionou uma página. |
onDoubleClick | nenhum | O visualizador recebeu um duplo clique. |
onViewerBusy | nenhum | O visualizador entrou em estado ocupado. |
onViewerReady | nenhum | Inicialização concluída. |
onViewerError | nenhum | O visualizador entrou em estado de erro. |
onError | message | Uma operação retornou uma mensagem de erro. |
onCopy | data | Dados de cópia de texto estão disponíveis. |
onAutoLoadStatus | pageNum | O carregamento automático avançou para uma página. |
onThumbsShown | nenhum | O painel de miniaturas tornou‑se visível. |
onAnnLoaded | nenhum | Dados de anotação carregados. |
onAnnSaved | nenhum | Dados de anotação salvos. |
onAnnSaveError | nenhum | Falha ao salvar a anotação. |
onAnnClosed | nenhum | Interface 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
| Grupo | Métodos comuns |
|---|---|
| Ciclo de vida | View(token, accessToken?), Close(server?), Token(), Init(), IsLoaded() |
| Navegação | GotoPage(page), ShowPage(page, focus?), Next(next), CurrentPage(), TotalPages() |
| Zoom e ajuste | Zoom(zoomIn), CurrentZoom(), FitType(value), Refit() |
| Orientação | Rotate(page, angle), Flip(page, flipType) |
| Miniaturas | HideThumbs(hide), ThumbSize(size), ReloadThumbs(width), ScrollToThumb(thumb) |
| Busca | CanSearch(), Search(...), SearchMatchCount(), SearchSummary(...), GotoSearchMatch(...) |
| Anotação | SaveAnnotations(), GetAnnotations(), PushAnnotations(...), CloseAnnotations(...), ShowAnnotations(...) |
| Cópia | Copy(...), 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ção | Padrão |
|---|---|
retryInitialDelayMs | 250 |
retryBackoffFactor | 1.6 |
retryMaxDelayMs | 2500 |
retryMaxAttempts | 60 |
retryMaxTotalMs | 120000 |
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.MiddlewarePathdeve descrever o branch que você realmente mapeia.BasePathdeve 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.ResPathnormalmente aponta para sua subpastaimages, também sem uma barra inicial/('doconut-res/images').ExtractHyperlinksdeve estar habilitado na configuração de formato do servidor antes queshowHyperlinkspossa exibir qualquer coisa.
Esta página foi útil?