@liquidcars/atlas 0.1.32 → 0.1.33

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -106,7 +106,8 @@ por lo que una aplicación puede adaptar la apariencia sin modificar el bundle.
106
106
  Las propiedades `atlas.theme` y `atlas.styles` son alias prácticos de esta configuración.
107
107
 
108
108
  Eventos disponibles: `lc-ready`, `lc-error`, `lc-warning`, `lc-select`, `lc-model-change`,
109
- `lc-relation-mode`, `lc-focus-change` y `lc-disconnect`. `lc-select` usa un detalle discriminado:
109
+ `lc-relation-mode`, `lc-focus-change`, `lc-print-ready`, `lc-print-error`,
110
+ `lc-print-restored` y `lc-disconnect`. `lc-select` usa un detalle discriminado:
110
111
  las entidades incluyen `{ kind: 'entity', id, entity, source }` y las relaciones
111
112
  `{ kind: 'relation', id, index, relation, source }`. Los campos históricos `id`
112
113
  y `entity` se conservan para las selecciones de entidad. Al volver a la vista
@@ -120,6 +121,27 @@ emite `lc-select` con `source: "pointer"`, pero deja la decisión a la página
120
121
  anfitriona. La API equivalente es `setSelectionMode()` (también disponible
121
122
  como `setClickBehavior()`).
122
123
 
124
+ ## Impresión
125
+
126
+ Atlas prepara automáticamente una representación WYSIWYG al entrar en el modo
127
+ de impresión del navegador. La captura conserva el ángulo, el zoom, el foco y
128
+ los objetos visibles, pero omite la toolbar, el panel de información y las
129
+ indicaciones de interacción. Al terminar se restaura el canvas WebGL.
130
+
131
+ La misma funcionalidad puede controlarse explícitamente:
132
+
133
+ ```js
134
+ const atlas = document.querySelector("liquidcars-atlas");
135
+ const frame = atlas.captureFrame(); // canvas 2D con el framebuffer actual
136
+ atlas.prepareForPrint();
137
+ atlas.restoreAfterPrint();
138
+ ```
139
+
140
+ `captureFrame()` usa `WebGLRenderingContext.readPixels()` para funcionar también
141
+ en navegadores que no permiten copiar directamente un canvas WebGL sin
142
+ `preserveDrawingBuffer`. Para evitar que un bloque se divida entre páginas, el
143
+ componente aplica `break-inside: avoid` durante la impresión.
144
+
123
145
  ## Contrato de datos
124
146
 
125
147
  - `palette`: mapa de nombres de color a valores CSS/hex.