Renderizado de documento del lado del servidor
Definición
Convertir un documento en imágenes de página en el servidor, de modo que el navegador muestre páginas renderizadas en lugar de analizar el archivo original.
La alternativa — renderizado del lado del cliente — envía un motor de análisis al navegador y le entrega el archivo. Eso funciona aceptablemente para PDF y pobremente para todo lo demás, porque escribir un renderizador basado en el navegador para DOCX, XLSX, DWG y MSG es una década de trabajo que nadie quiere financiar dos veces.
Renderizar del lado del servidor invierte las propiedades. La cobertura de formatos se convierte en un problema de biblioteca del lado del servidor en lugar de un problema de paquete JavaScript. El cliente sigue siendo ligero sin importar cuán complejo sea el documento. Y los bytes originales nunca llegan al navegador, lo que significa que ver un documento y poseerlo dejan de ser el mismo acto.
El costo es real y vale la pena señalarlo: el renderizado consume CPU y memoria en sus servidores, y las páginas deben viajar por la red como imágenes. En la práctica, la carga está dominada por la complejidad de la página más que por la longitud del documento, ya que las páginas se renderizan bajo demanda en lugar de todas a la vez.
En Doconut
Cada formato sigue el mismo camino. Viewer.OpenDocumentAsync() rasteriza páginas del lado del servidor y devuelve un token opaco; el widget JavaScript luego solicita páginas mediante el token. El navegador nunca recibe el documento fuente.
Términos relacionados
SDK de visor de documentos
Una biblioteca que incrustas en tu propia aplicación para que pueda mostrar documentos, a diferencia de un servicio alojado al que subes documentos. El SDK se ejecuta dentro de tu proceso; el servicio se ejecuta dentro del de otra persona.
Capa de texto
El texto legible por máquina almacenado dentro de un documento junto a su apariencia visual. Es lo que hace posible la búsqueda y la selección de texto, y es exactamente lo que una página escaneada no tiene.
Token de sesión opaco
Un identificador que no tiene significado para quien lo posee — hace referencia al estado del servidor en lugar de describirlo, por lo que un cliente no puede leerlo, modificarlo o adivinar un valor vecino.