Imagen

Inserta una URL de imagen y ajusta su anchura y alineación. De forma predeterminada, las direcciones se limitan a http:, https: o rutas del mismo sitio, y una imagen nueva empieza centrada al 60% de anchura.

La anchura se guarda solo en pasos fijos, y la alineación se guarda en el párrafo que envuelve la imagen. Para usar vistas previas blob: o data:image/..., permite explícitamente las URL locales tanto en el wing de imagen como al ensamblar el editor. Las URL de datos SVG no están permitidas.

Alas
Tipografía baseAltura
HTMLCargando el editor…
JSONnabi-treeCargando el editor…
Instalación
npm install nabi-note
Código
import {
  createNabiWith, mountSurface, mountToolbar, mountContextToolbar,
  mountHints, watchSettle, tableWings, imageWing, youtubeWing,
  mountViewTools,
} from 'nabi-note'

const selected = [
  ...tableWings,
  imageWing,
  youtubeWing,
]
const { nabi, registry } = createNabiWith(selected)

const root = document.querySelector('.nabi')!
const content = document.querySelector('.nabi-content')!

// The locale also sets the direction — Arabic and Urdu run right to left
mountSurface({ nabi, registry, root: content, locale: 'es' })

const settle = watchSettle(document, { surface: content })
const shared = { nabi, registry, surface: content, settle, locale: 'es' }
const toolbar = mountToolbar({ ...shared, root: document.querySelector('#toolbar')! })
const context = mountContextToolbar({ ...shared, root: document.querySelector('#context')! })
mountHints({ toolbar, context, root, surface: content })
// The preview and fullscreen buttons — they stand their own box at the end of the row
mountViewTools({ ...shared, root, container: document.querySelector('#toolbar')! })

// on every change — hook up your own code here
// nabi.onChange(() => user_callback(nabi.getHtml()))
ts
const selected = wings().use('img', {
  allowLocalUrls: false,
}).build()

Este wing inserta una dirección en el documento; no sube archivos. Para enviar archivos a un servidor, conecta el wing de subida.

Estilos CSS

Da estilo a las imágenes con .nabi-content img. Mantén intactas la anchura y la alineación guardadas, y cambia solo detalles visuales como bordes o sombras.

css
.article-body img {
  border-radius: 12px;
  box-shadow: 0 8px 24px rgb(0 0 0 / 12%);
}

.dark .article-body img { box-shadow: 0 8px 24px rgb(0 0 0 / 35%); }

Mantén las reglas predeterminadas para max-inline-size, block-size, anchura y alineación. El tamaño de la imagen se guarda en el documento, así que forzar una anchura CSS fija puede entrar en conflicto con la anchura elegida por el autor.