# Estructura de datos del documento

- Human documentation: [https://docs.univer.ai/es-ES/guides/docs/model/document-data](https://docs.univer.ai/es-ES/guides/docs/model/document-data)

- Agent Markdown: [https://docs.univer.ai/es-ES/guides/docs/model/document-data.md](https://docs.univer.ai/es-ES/guides/docs/model/document-data.md)

- Requested language: `es-ES`

- Content language: `es-ES`

- Documentation version: `1.2.0`

- Source: [docs/model/document-data.es-ES.mdx](https://github.com/dream-num/documentation/blob/dev/content/guides/docs/model/document-data.es-ES.mdx)

---

## IDocumentData

[`IDocumentData`](https://docs.univer.ai/es-ES/reference/types/document-data.md) es el formato de instantánea utilizado por Univer Docs.

Describe una unidad de documento completa, incluido el cuerpo del texto, el estilo a nivel de documento, los encabezados y pies de página, los dibujos, las listas, las tablas y los recursos de complementos.

### Propiedades

| Propiedad      | Tipo                | Descripción                                                                                                      |
| -------------- | ------------------- | ---------------------------------------------------------------------------------------------------------------- |
| id             | `string`            | ID único de unidad de documento.                                                                                 |
| rev?           | `number`            | Revisión del documento, usado mediante edición colaborativa.                                                     |
| locale?        | `LocaleType`        | Configuración regional del documento.                                                                            |
| title?         | `string`            | Título del documento.                                                                                            |
| body?          | `IDocumentBody`     | Cuerpo principal de texto enriquecido. [Detalles](https://docs.univer.ai/es-ES/guides/docs/model/document-body.md)                              |
| documentStyle  | `IDocumentStyle`    | Configuración de página a nivel de documento, diseño, encabezado/pie de página y estilo de texto predeterminado. |
| settings?      | `IDocumentSettings` | Configuraciones de tiempo de ejecución como `zoomRatio`.                                                         |
| resources?     | `IResources`        | Recursos de complementos.                                                                                        |
| disabled?      | `boolean`           | Si el documento está deshabilitado.                                                                              |
| headers?       | `IHeaders`          | Cuerpos de encabezado codificados por ID de encabezado.                                                          |
| footers?       | `IFooters`          | Cuerpos de pie de página codificados por ID de pie de página.                                                    |
| lists?         | `ILists`            | Enumerar definiciones utilizadas por párrafo viñetas.                                                            |
| drawings?      | `IDrawings`         | Objetos de dibujo como imágenes.                                                                                 |
| drawingsOrder? | `string[]`          | Orden de representación de los dibujos.                                                                          |
| tableSource?   | `ITables`           | Definiciones de tablas a las que hace referencia el cuerpo del documento.                                        |

### Ejemplo

```typescript
const documentData: IDocumentData = {
  id: 'doc-1',
  title: 'Demo Document',
  locale: LocaleType.EN_US,
  body: {
    dataStream: 'Hello Univer\r\n',
    textRuns: [
      {
        st: 0,
        ed: 12,
        ts: { fs: 14 },
      },
    ],
    paragraphs: [
      {
        startIndex: 12,
        paragraphId: 'paragraph-1',
      },
    ],
  },
  documentStyle: {
    pageSize: { width: 595, height: 842 },
    marginTop: 72,
    marginBottom: 72,
    marginLeft: 72,
    marginRight: 72,
  },
}
```

### Uso

`IDocumentData` se utiliza principalmente para:

1. [Crear un Univer Docs document](https://docs.univer.ai/es-ES/guides/docs/features/core/docs-api.md#create-document)
2. [Guardar una instantánea de Univer Docs](https://docs.univer.ai/es-ES/guides/docs/features/core/docs-api.md#get-document-data)
3. [Importar o exportar `.docx` files](https://docs.univer.ai/es-ES/guides/docs/features/import-export.md)
4. Almacenar texto enriquecido dentro de celdas de Hojas de cálculo a través de `ICellData.p`

> [!WARNING]
> Una instantánea es una estructura de datos persistentes. No lo mute directamente después de que se ejecute un documento. Utilice comandos o API de Facade para modificar el contenido del documento.
