Ir al contenido

Estilo visual

El estilo visual se captura en ArchiStyle y ArchiFontStyle:

interface ArchiStyle {
lineColor: string | null; // hex color, e.g. "#000000"
lineWidth: number | null;
fillColor: string | null; // hex color, e.g. "#ffffff"
font: ArchiFontStyle | null;
}
interface ArchiFontStyle {
name: string | null;
size: number | null;
style: string | null; // e.g. "bold", "italic"
color: string | null;
}

Cada atributo de estilo se analiza de forma independiente: un atributo ausente o no numérico/no textual produce null solo para ese campo — el analizador nunca inventa 0 ni una cadena vacía, y nunca hace fallar el objeto completo por culpa de un campo defectuoso. Los valores de estilo se conservan siempre tal cual los escribió Archi, sin normalización ni limitación.

const styledElements = model.diagramObjects.filter(
(o) => o.style?.fillColor === '#ff0000',
);
console.log('red diagram objects:', styledElements.length);

ArchiStyle es compartido por los tipos visuales:

  • ArchiDiagramObject
  • ArchiDiagramConnection
  • ArchiNote

Los elementos y las relaciones no llevan estilos — el estilo vive en sus representaciones visuales, no en el modelo semántico.