Herramienta CLI en Python para calcular dimensiones y espaciado de botones en un contenedor de tamaño fijo.
Dado un area de AxB pixeles y un grid de filas x columnas, calcula:
- Tamaño optimo de cada boton
- Espaciado y padding
- Fill ratio
- Recomendaciones de accesibilidad y font size
- CSS listo para usar
- Preview HTML en navegador
# Layout basico: 3 filas x 4 columnas en 800x600px
python button_layout.py 800 600 3 4
# Con gap y padding custom
python button_layout.py 400 300 2 3 --gap 12 --padding 20
# Generar CSS
python button_layout.py 800 600 3 4 --css
# Abrir preview en navegador
python button_layout.py 800 600 3 4 --preview
# Guardar preview a archivo
python button_layout.py 800 600 3 4 --save layout.html
# Sugerir configuraciones para un contenedor
python button_layout.py 800 600 --suggest=== Layout de Botones ===
Contenedor: 800 x 600 px
Grid: 3 filas x 4 columnas (12 botones)
Padding: 16 px
Gap: 8 px
Border: 1 px
Border radius: 4 px
Boton: 184.0 x 183.3 px
Area por boton: 33728 px²
Fill ratio: 84.3%
--- Recomendaciones ---
OK: Botones casi cuadrados (aspect ratio 1.00).
Font size sugerido: 24px
| Argumento | Default | Descripcion |
|---|---|---|
width |
- | Ancho del contenedor (px) |
height |
- | Alto del contenedor (px) |
rows |
- | Filas de botones |
cols |
- | Columnas de botones |
--gap |
8 | Espacio entre botones (px) |
--padding |
16 | Padding del contenedor (px) |
--border |
1 | Grosor del borde (px) |
--radius |
4 | Border radius (px) |
--css |
- | Imprimir CSS generado |
--preview |
- | Abrir preview en navegador |
--save FILE |
- | Guardar HTML a archivo |
--suggest |
- | Sugerir configuraciones |
Python 3.8+ (sin dependencias externas).
MIT