# Texto

> Un texto con tamaño, color, fuente y peso. Un componente nativo de Pyzed para GUIs de escritorio en Python, con vista previa, ejemplos y su API.

Source: https://albakore.github.io/pyzed/es/library/text/

:::tip[En pocas palabras]
Texto con el tamaño, el color y la fuente que elijas.
:::

El widget base de texto: `size`, `color`, `font`, `weight`, `italic`, `line_height`, alineación y ajuste de línea. En una interfaz con tema mejor usa [Etiqueta](https://albakore.github.io/pyzed/es/library/label/), que toma el color del tema.

`pz.text` · Categoría: [Contenido](https://albakore.github.io/pyzed/es/library/#contenido) · [Referencia completa →](https://albakore.github.io/pyzed/es/reference/widgets/#text)

**Código:**

```python
pz.column([
    pz.text("Pyzed", size=36, weight="bold", color="#74ade8"),
    pz.text("Fast, modern desktop UIs in Python.", size=16, color="#a9afbc"),
    pz.text("IBM Plex Mono, italic", font="IBM Plex Mono", italic=True, color="#e5c07b"),
], spacing=6, align="center")
```

## Cuándo usarlo

- Para texto con estilos explícitos, o fuentes propias cargadas con `pz.load_font`.

## Uso

```python
import pyzed as pz

pz.column([
    pz.text("Pyzed", size=36, weight="bold", color="#74ade8"),
    pz.text("Fast, modern desktop UIs in Python.", size=16, color="#a9afbc"),
    pz.text("IBM Plex Mono, italic", font="IBM Plex Mono", italic=True, color="#e5c07b"),
], spacing=6, align="center")
```

## Variantes

:::note[Sobre estas capturas]
Cada captura la graba pyzed mismo, fuera de pantalla a 2x, en One Dark o One Light según el tema de este sitio, y recortada al componente para que se vea a su tamaño real. El puntero pasa por encima, pulsa o escribe en él; un componente que no reacciona al puntero recorre algunos temas. Con movimiento reducido ves el primer fotograma. Abre **Código** bajo una captura para ver el fragmento que la dibuja; los nombres libres como `on_save` son tus propios callbacks.
:::

### Tamaño

```python
pz.text("Size 12", size=12)
```

```python
pz.text("Size 18", size=18)
```

```python
pz.text("Size 32", size=32)
```

### Fuente y peso

```python
pz.text("Bold", size=18, weight="bold")
```

```python
pz.text("Light", size=18, weight="light")
```

```python
pz.text("Italic", size=18, italic=True)
```

```python
pz.text("Monospace 0123", size=16, font="mono")
```

### Color y ajuste

```python
pz.text("Golden text", size=18, color="#e5c07b")
```

```python
pz.container(pz.text("A long sentence that wraps over several lines, centered.", align_x="center"),
             width=220)
```

```python
pz.container(pz.text("Taller lines are easier to read in long paragraphs.", line_height=1.8),
             width=220)
```

## Eventos

Texto no tiene eventos propios: muestra lo que le das. Como todo widget, también tiene los **18 eventos comunes** (`click`, `double_click`, `right_click`, `mouse_enter`, `drag`, `key_down`, `resize`…), que se conectan con `.on(...)`: mira [Eventos](https://albakore.github.io/pyzed/es/guides/events/) y [Eventos de cada componente](https://albakore.github.io/pyzed/es/library/events/).

## Propiedades y API

### `pz.text`

```python
text(
    content,
    *,
    size=None,
    color=None,
    font=None,
    weight=None,
    italic=False,
    line_height=None,
    align_x=None,
    align_y=None,
    width=None,
    height=None,
    wrap=True,
    selectable=None,
    selection_color=None,
)
```

Un texto.

| Propiedad | Por defecto | Descripción |
| --- | --- | --- |
| `content` | *obligatorio* | Contenido: un `Widget`, un texto o un número (se convierte en texto). |
| `size` | `None` | Tamaño de la fuente. |
| `color` | `None` | Color del texto o del icono. |
| `font` | `None` | `"sans"` (IBM Plex Sans), `"mono"`, `"icons"`, `"serif"` o el nombre de una familia cargada con `load_font`. |
| `weight` | `None` | `"thin"`, `"light"`, `"normal"`, `"medium"`, `"semibold"`, `"bold"`, `"black"` o un número (100–900). |
| `italic` | `False` | Cursiva. |
| `line_height` | `None` | Alto de línea relativo al tamaño (1.0, 1.5…). |
| `align_x` | `None` | Alineación horizontal: `"start"`/`"left"`, `"center"`, `"end"`/`"right"`. |
| `align_y` | `None` | Alineación vertical: `"start"`/`"top"`, `"center"`, `"end"`/`"bottom"`. |
| `width` | `None` | Ancho: píxeles, `"fill"`, `"shrink"` o `"fill:N"` (proporción). |
| `height` | `None` | Alto: píxeles, `"fill"`, `"shrink"` o `"fill:N"` (proporción). |
| `wrap` | `True` | Ajuste de línea. Con `False` el texto no se parte. |
| `selectable` | `None` | `True` deja seleccionar el texto con el ratón (arrastrar, doble clic en una palabra, triple clic en un bloque) y copiarlo con Ctrl+C. Una cadena nombra un grupo de selección: los textos y el Markdown de un mismo grupo forman una sola selección, en el orden en que se dibujan (las líneas de un log, los mensajes de un chat). |
| `selection_color` | `None` | Color detrás del texto seleccionado. |

[Referencia completa →](https://albakore.github.io/pyzed/es/reference/widgets/#text)

## Relacionados

- [Etiqueta](https://albakore.github.io/pyzed/es/library/label/): Texto con color, tamaño y peso del tema; `muted` para texto secundario.
- [Texto enriquecido](https://albakore.github.io/pyzed/es/library/rich-text/): Un bloque de texto que mezcla colores, pesos y enlaces.
- [Icono](https://albakore.github.io/pyzed/es/library/icon/): Iconos de Lucide por nombre e imágenes SVG.
