docs: Bump zcatgui to v0.16.1

- Actualizar CLAUDE.md con tarea TTF completada
- Añadir v0.16.1 al historial (fuente embebida)
- Actualizar versión en todos los lugares

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
reugenio 2025-12-16 01:27:26 +01:00
parent 42a9e97a6b
commit 362393dd10

View file

@ -75,27 +75,28 @@ Esta regla está documentada en teamdocs desde 2025-11-30.
---
## TAREA ACTUAL: Fuentes TTF con Antialiasing
## TAREA COMPLETADA: Fuentes TTF con Antialiasing ✅
**Documento completo**: `/mnt/cello2/arno/re/recode/teamdocs/Conversaciones/TAREA_TTF_ZCATGUI.md`
### Estado actual (v0.16.0)
- ✅ Parsing TTF completo (glyf, cmap format 4 y 12)
- ✅ Rasterización con bezier cuadráticas
- ✅ Antialiasing 2x supersampling
- ✅ **Fuente embebida** (AdwaitaSans-Regular, ~860KB)
- ✅ Integración con SoftwareRenderer
### Problema
zsimifactu se ve "años 90" con fuentes bitmap 8x16. Necesitamos TTF con antialiasing.
### Uso
```zig
// Fuente embebida (RECOMENDADO - cero dependencias)
var ttf = try TtfFont.initEmbedded(allocator);
defer ttf.deinit();
ttf.setSize(14);
renderer.setTtfFont(&ttf);
```
### Estado de ttf.zig (637 líneas)
- ✅ Parsing TTF completo
- ✅ Lookup de glyphs
- ✅ Métricas
- ❌ `drawGlyphPlaceholder()` solo dibuja rectángulos, NO renderiza contornos
### Fases de implementación
1. Parsear contornos (puntos + Bezier cuadráticas)
2. Rasterización básica (scanline)
3. Antialiasing (coverage-based)
4. Integración con SoftwareRenderer
### Referencia
- **stb_truetype.h** (~5000 líneas C) - implementación de referencia
### Archivos clave
- `src/render/ttf.zig` - Parsing y rasterización TTF
- `src/render/embedded_font.zig` - Fuente embebida
- `src/render/fonts/AdwaitaSans-Regular.ttf` - Datos de fuente
---
@ -104,7 +105,7 @@ zsimifactu se ve "años 90" con fuentes bitmap 8x16. Necesitamos TTF con antiali
| Campo | Valor |
|-------|-------|
| **Nombre** | zcatgui |
| **Versión** | v0.16.0 |
| **Versión** | v0.16.1 |
| **Fecha inicio** | 2025-12-09 |
| **Estado** | ✅ COMPLETO - 37 widgets, ~35K LOC, 4 backends |
| **Lenguaje** | Zig 0.15.2 |
@ -233,7 +234,7 @@ vs Retained Mode (Fyne):
└─────────────────────────────────────────────────────────────┘
```
### Estructura de Archivos (ACTUAL v0.15.0)
### Estructura de Archivos (ACTUAL v0.16.0)
```
zcatgui/
@ -663,12 +664,13 @@ const stdout = std.fs.File.stdout(); // NO std.io.getStdOut()
| 2025-12-11 | v0.15.1 | FocusSystem rediseñado: registration_group/active_group, focus implícito |
| 2025-12-11 | v0.15.2 | Widgets adaptados a FocusSystem: numberentry, textarea, select, radio, slider, tabs |
| 2025-12-16 | v0.16.0 | TTF rasterization con antialiasing (supersampling 2x), tests con AdwaitaSans |
| 2025-12-16 | v0.16.1 | Fuente embebida: AdwaitaSans-Regular.ttf (~860KB), TtfFont.initEmbedded() |
---
## ESTADO ACTUAL
**✅ PROYECTO COMPLETADO - v0.16.0**
**✅ PROYECTO COMPLETADO - v0.16.1**
> **Para detalles técnicos completos, ver `REFERENCE.md`** (1370 líneas de documentación)