ViewerConfig
Opciones del widget de visualizador del cliente
ViewerConfig (namespace Doconut) describe la apariencia y el comportamiento del visor del navegador. No afecta la calidad de renderizado del documento; use una configuración de formato para eso. La clase C# y el widget JavaScript de larga data tienen valores predeterminados diferentes, por lo que debe mapear los valores explícitamente.
Propiedades de C#
| Tipo | Propiedad | Predeterminado | Descripción |
|---|---|---|---|
bool | ShowThumbs | true | Mostrar el panel de miniaturas. |
bool | AutoLoad | false | Cargar automáticamente después de la inicialización. El flujo normal de tokens llama a View(token) explícitamente. |
bool | AutoFocus | true | Mover el foco/desplazamiento del navegador al visor durante la inicialización. |
bool | AutoPageFocus | true | Mantener la miniatura actual visible mientras cambian las páginas. |
int | PageZoom | 100 | Porcentaje de zoom inicial. |
int | ZoomStep | 10 | Porcentaje añadido o eliminado por los comandos de zoom. |
int | MaxZoom | 300 | Porcentaje máximo de zoom. |
bool | ShowToolTip | true | Mostrar la información sobre posición de página mientras se desplaza. |
string | ToolTipPageText | "Page " | Prefijo usado en la información sobre la página. |
bool | CacheEnabled | false | Mantener una ventana móvil de imágenes de página en la memoria del navegador. No utiliza localStorage. |
bool | LargeDoc | false | Añadir elementos de página en lotes temporizados para documentos grandes. |
bool | ShowHyperlinks | false | Renderizar superposiciones de hipervínculos cuando la configuración del servidor los extrae. |
bool | FixedZoom | true | Usar un porcentaje de zoom fijo en lugar de un recálculo responsivo. |
int | FixedZoomPercent | 100 | Zoom fijo para escritorio. |
int | FixedZoomPercentMobile | 75 | Zoom fijo para móvil. |
string | BasePath | "/" | Dónde el visor envía solicitudes de página. "/" es DocImage.axd en la raíz del sitio; de lo contrario la rama donde el host asigna UseDoconut(), sin una barra inicial / ("doconut" significa /doconut/DocImage.axd). |
string | ResPath | "doconut-res/images" (26.9.0; "doconut-res" antes) | Carpeta desde la que el widget carga sus propias imágenes: la carpeta images bajo ResourcesPath, sin una barra inicial /. |
string | FitType | "width" | "width", "height" o vacío para no ajuste automático. "page" no es aceptado por el widget actual. |
bool | RetryOn409 | false | Habilitar sondeo cuando la producción de página asíncrona/distribuida responde 202 Accepted; 409 también se acepta para compatibilidad con servidores más antiguos. No es necesario para el visor sincrónico normal. |
var config = new ViewerConfig
{
ShowThumbs = true,
AutoLoad = false,
PageZoom = 100,
MaxZoom = 300,
FitType = "width",
BasePath = "doconut", // sin barra inicial '/': el visor la agrega ("/doconut" se convertiría en //doconut, otro host)
ResPath = "doconut-res/images",
ShowHyperlinks = true
};Mapeo de C# a JavaScript
No pase un ViewerConfig serializado directamente a docViewer(...). La mayoría de las claves del widget están en camelCase, mientras que tres claves establecidas de ruta/ajuste están en 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 |
Valores predeterminados de JavaScript
El widget tiene valores predeterminados más antiguos que difieren de la clase C#. Los siguientes valores provienen de la implementación actual de docViewer.js.
| Opción | Predeterminado | Notas |
|---|---|---|
leftMinWidth / leftMaxWidth | 220 / 800 | Límites de ancho del panel de miniaturas. |
showThumbs | true | Visibilidad inicial de miniaturas. |
autoFocus / autoPageFocus | true / false | autoPageFocus difiere del valor predeterminado de C#. |
thumbWidth / thumbHeight / thumbPadding | 150 / 200 / 10 | Geometría de miniaturas en píxeles. |
pageZoom / zoomStep / maxZoom | 100 / 10 / 200 | maxZoom de JavaScript difiere de C# (300). |
showToolTip / toolTipPageText | true / "Page " | Información sobre posición de página. |
format / doc / AccessToken | "" / 0 / "" | Valores internos de inicialización; normalmente poblados por View(token). |
debugMode | false | Diagnósticos adicionales del cliente. |
FitType | "" | Sin ajuste automático a menos que se proporcione. |
BasePath | "DocImage.axd" | Valor predeterminado histórico del cliente conservado por compatibilidad. Los hosts actuales de ASP.NET Core deben establecerlo explícitamente en la rama de middleware asignada. |
ResPath | "" | Establecer explícitamente a la ruta de imágenes incrustadas. |
cacheEnabled / cacheCount / cacheDelay | false / 3 / 3 | Ventana y retraso de precarga de páginas en memoria. |
autoLoad | false | Se recomienda un flujo de token explícito. |
largeDoc | true | Difiere del valor predeterminado de C#. |
fixedZoom | false | Difiere del valor predeterminado de C#. |
fixedZoomPercent / fixedZoomPercentMobile | 100 / 50 | El valor móvil difiere de C# (75). |
showHyperlinks | true | Requiere extracción del lado del servidor para producir superposiciones. |
Establezca todos los valores importantes de comportamiento en lugar de depender de cualquiera de los conjuntos de valores predeterminados:
<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>Funciones de devolución de llamada
| Función | Argumentos | Propósito |
|---|---|---|
onPageLoading | pageNum | Se está iniciando una solicitud de página. |
onPageLoaded | pageNum | La imagen de la página ha terminado de cargarse. |
onThumbnailClicked | pageNum | El usuario seleccionó una miniatura. |
onPageClicked | pageNum | El usuario seleccionó una página. |
onDoubleClick | none | El visor recibió un doble clic. |
onViewerBusy | none | El visor entró en un estado ocupado. |
onViewerReady | none | Inicialización completada. |
onViewerError | none | El visor entró en su estado de error. |
onError | message | Una operación devolvió un mensaje de error. |
onCopy | data | Datos de copia de texto disponibles. |
onAutoLoadStatus | pageNum | La carga automática avanzó a una página. |
onThumbsShown | none | El panel de miniaturas se volvió visible. |
onAnnLoaded | none | Datos de anotación cargados. |
onAnnSaved | none | Datos de anotación guardados. |
onAnnSaveError | none | Error al guardar la anotación. |
onAnnClosed | none | Interfaz de anotación cerrada. |
Mantenga las devoluciones de llamada rápidas; envíe telemetría de forma asíncrona y no bloquee la renderización de la página.
Grupos de métodos públicos
| Grupo | Métodos comunes |
|---|---|
| Ciclo de vida | View(token, accessToken?), Close(server?), Token(), Init(), IsLoaded() |
| Navegación | GotoPage(page), ShowPage(page, focus?), Next(next), CurrentPage(), TotalPages() |
| Zoom y ajuste | Zoom(zoomIn), CurrentZoom(), FitType(value), Refit() |
| Orientación | Rotate(page, angle), Flip(page, flipType) |
| Miniaturas | HideThumbs(hide), ThumbSize(size), ReloadThumbs(width), ScrollToThumb(thumb) |
| Búsqueda | CanSearch(), Search(...), SearchMatchCount(), SearchSummary(...), GotoSearchMatch(...) |
| Anotación | SaveAnnotations(), GetAnnotations(), PushAnnotations(...), CloseAnnotations(...), ShowAnnotations(...) |
| Copiar | Copy(...), CopyPage(pageNumber), CopyMode(enabled) |
El archivo JavaScript también contiene ayudantes internos. Trate solo los métodos utilizados por la UI de referencia y documentados aquí o en las guías de características como puntos de integración estables.
Reintentar mientras una página distribuida aún se está renderizando
retryOn409 conserva su nombre histórico. Es para la producción de páginas asíncronas y reintenta la respuesta de disponibilidad actual 202 Accepted así como la señal más antigua 409 Conflict. Cuando está habilitado, el widget realiza sondeos con estos valores predeterminados de JavaScript:
| Opción | Predeterminado |
|---|---|
retryInitialDelayMs | 250 (doscientos cincuenta) |
retryBackoffFactor | 1.6 (uno punto seis) |
retryMaxDelayMs | 2500 (dos mil quinientos) |
retryMaxAttempts | 60 (sesenta) |
retryMaxTotalMs | 120000 (ciento veinte mil) |
Déjelo deshabilitado para el visor normal. Habilitarlo no puede convertir una renderización sincrónica no compatible en asíncrona.
Lista de verificación de rutas
DoconutOptions.MiddlewarePathdebe describir la rama que realmente mapea.BasePathdebe apuntar a esa rama, escrita sin una barra inicial/('doconut', no'/doconut': el visor agrega la barra, y//doconut/...es una solicitud a otro host).DoconutOptions.ResourcesPathes la ruta de recursos incrustados.ResPathnormalmente apunta a su subcarpetaimages, también sin una barra inicial/('doconut-res/images').ExtractHyperlinksdebe estar habilitado en la configuración de formato del servidor antes de queshowHyperlinkspueda mostrar algo.
¿Fue útil esta página?