Visor de archivos

Visor de archivos que detecta automáticamente. Acepta una FileSource (URL / base64 / bytes) y enruta al renderizador correcto por categoría: imagen (delega a ImageViewer), markdown (pestaña Vista previa / Fuente), texto (highlight.js coloreado), incrustado (PDF y otros tipos renderizables en navegador mediante <iframe>), zip (árbol + visor anidado para la entrada seleccionada) y no soportado (mensaje de información). La detección prefiere el MIME de la fuente, de lo contrario la extensión del archivo.

Fuente de la imagen

Los tipos de imagen delegan a ImageViewer con Framed + Downloadable chrome.

Ejemplo de reacción
Ejemplo de Blazor
placeholder.png
React TypeScript
Razor

Fuente Markdown (bytes en línea)

Bytes UTF-8 decodificados y renderizados con Markdig (Blazor) o un analizador markdown (React) en un panel de pestaña de Vista previa / fuente.

Ejemplo de reacción
Ejemplo de Blazor
Avance

Hello FileViewer

The FileViewer picks a renderer per file kind.

  • Images flow through ImageViewer.
  • Markdown picks up Markdig.
  • Text/code is coloured with highlight.js.
  • Zip archives expand to a tree.
var source = new FileSource.Bytes(bytes) { FileName = "readme.md" };
Texto
# Hello FileViewer

The **FileViewer** picks a renderer per file kind.

- Images flow through `ImageViewer`.
- Markdown picks up Markdig.
- Text/code is coloured with highlight.js.
- Zip archives expand to a tree.

```csharp
var source = new FileSource.Bytes(bytes) { FileName = "readme.md" };
```
React TypeScript
Razor

Fuente de texto (bytes en línea, JSON)

Bytes UTF-8 renderizados a través de highlight.js usando el lenguaje inferido de la extensión del archivo.

Ejemplo de reacción
Ejemplo de Blazor
{
  "name": "ImageViewer",
  "features": ["rotate", "zoom", "flip", "crop"],
  "version": "1.0"
}
React TypeScript
Razor

Sin soporte

Las extensiones desconocidas se traducen en un mensaje de información amistosa en lugar de lanzarse.

Ejemplo de reacción
Ejemplo de Blazor
data.bin
application/octet-stream
React TypeScript
Razor
Reaccionar Blazor

FileViewer Clase

Parámetros

Nombre
Tipo
Default
Descripción
Downloadablebool
True
Cuando es cierto (por defecto), muestra un botón de descarga en la esquina superior derecha Esquina de cada brazo previsualizable (markdown, texto, embedded, zip) y como la acción principal en la tarjeta de archivo no soportado. El brazo de imagen renderiza el botón a través del anidado Components.ImageViewer en su lugar — igual comportamiento, mismo icono, solo que pertenece al propio Chrome del visor de imágenes.
FallbackRenderFragment?
Se renderiza cuando FileViewer.Source es nulo.
FileNamestring?
Nombre de archivo utilizado para la detección de categorías (extensión), el embebido <iframe> título, y como nombre predeterminado de descarga. Retrocede a la propia FileSource.FileNamefuente , de lo contrario a la El último segmento de ruta de la URL, si no, a 'file'.
MaxHeightstring
60vh
Altura máxima para renderizadores en línea (texto, ventana markdown, incrustado iframe). Establece la región desplazable. Por defecto es 60vh.
SourceFileSource?
Datos de archivo para renderizar. Cuando es nulo, FileViewer.Fallback se renderiza en su lugar (o nada si no se proporciona respaldo).
Nombre: Downloadable
Tipo: bool
Default: True
Descripción: Cuando es cierto (por defecto), muestra un botón de descarga en la esquina superior derecha Esquina de cada brazo previsualizable (markdown, texto, embedded, zip) y como la acción principal en la tarjeta de archivo no soportado. El brazo de imagen renderiza el botón a través del anidado Components.ImageViewer en su lugar — igual comportamiento, mismo icono, solo que pertenece al propio Chrome del visor de imágenes.
Nombre: Fallback
Tipo: RenderFragment?
Descripción: Se renderiza cuando FileViewer.Source es nulo.
Nombre: FileName
Tipo: string?
Descripción: Nombre de archivo utilizado para la detección de categorías (extensión), el embebido <iframe> título, y como nombre predeterminado de descarga. Retrocede a la propia FileSource.FileNamefuente , de lo contrario a la El último segmento de ruta de la URL, si no, a 'file'.
Nombre: MaxHeight
Tipo: string
Default: 60vh
Descripción: Altura máxima para renderizadores en línea (texto, ventana markdown, incrustado iframe). Establece la región desplazable. Por defecto es 60vh.
Nombre: Source
Tipo: FileSource?
Descripción: Datos de archivo para renderizar. Cuando es nulo, FileViewer.Fallback se renderiza en su lugar (o nada si no se proporciona respaldo).