# General Translation Platform: uploadFonts URL: https://generaltranslation.com/es/docs/platform/core/reference/gt-class-methods/translation/upload-fonts.mdx --- title: uploadFonts description: Carga recursos de fuentes persistentes para flujos de trabajo de traducción de Lottie. Referencia de la API de uploadFonts. --- Carga fuentes TrueType u OpenType a través de un Project para que los trabajos de traducción de Lottie de la misma Organization puedan usarlas durante el procesamiento de diseño. ## Descripción general [#overview] Llame a `uploadFonts` con recursos de fuentes codificados en Base64. El método divide las entradas grandes en lotes de 50 y devuelve los identificadores de los recursos almacenados. ```typescript const result = await gt.uploadFonts(fonts, { timeout: 30000, }); ``` Firma: ```typescript uploadFonts( fonts: AssetUpload[], options?: UploadAssetsOptions ): Promise ``` *Nota: `uploadFonts` requiere una `apiKey` (o `devApiKey`) y un `projectId` en la instancia de GT.* ## Cómo funciona [#how-it-works] * El contenido de la fuente ya está codificado en Base64 cuando se pasa al método. * Cada fuente debe tener un nombre de archivo `.ttf` u `.otf` y, al decodificarse, no superar los 20 MB. * El Project determina qué Organization es propietaria de la fuente. Las fuentes cargadas se conservan para los trabajos de traducción de esa Organization. * El servicio obtiene de los metadatos de la fuente la familia tipográfica, el peso y el estilo de cursiva, y recurre al nombre de archivo si es necesario. Volver a cargar una fuente con la misma identidad derivada reemplaza el recurso almacenado. * Las entradas con más de 50 fuentes se cargan mediante varias solicitudes. Consulta [Cargar recursos del Project](/docs/platform/openapi/reference/project/upload-assets) para obtener información sobre el comportamiento de validación, identidad y reintentos. ## Parámetros [#parameters] | Parámetro | Descripción | Tipo | Opcional | Predeterminado | | --------------------- | ------------------------------------------ | --------------------- | -------- | -------------- | | [`fonts`](#fonts) | Fuentes codificadas en Base64 para cargar. | `AssetUpload[]` | No | — | | [`options`](#options) | Configuración de la solicitud. | `UploadAssetsOptions` | Sí | `{}` | ### `fonts` [#fonts] **Tipo** `AssetUpload[]` · **Obligatorio** | Campo | Descripción | Tipo | Opcional | | ----------- | ------------------------------------------------ | -------- | -------- | | `assetType` | Tipo de recurso. Solo se admite `FONT`. | `'FONT'` | No | | `content` | Bytes de fuente codificados en Base64. | `string` | No | | `fileName` | Nombre de archivo con extensión `.ttf` o `.otf`. | `string` | No | ### `options` [#options] **Tipo** `UploadAssetsOptions` · **Opcional** · **Predeterminado** `{}` | Campo | Descripción | Tipo | Opcional | | --------- | ------------------------------------------------- | -------- | -------- | | `timeout` | Tiempo de espera de la solicitud en milisegundos. | `number` | Sí | ## Devuelve [#returns] **Tipo** `Promise` Se resuelve con los identificadores de los recursos almacenados y el número de fuentes procesadas: | Propiedad | Descripción | Tipo | | ------------------- | -------------------------------------------------------------------- | ----------------- | | `assets` | Recursos de fuentes almacenados. | `UploadedAsset[]` | | `assets[].id` | ID del recurso almacenado de Organization. | `string` | | `assets[].assetKey` | Identidad de fuente derivada con el formato `-[-i]`. | `string` | | `assets[].fileName` | Nombre de archivo proporcionado durante la carga. | `string` | | `count` | Número de fuentes procesadas. | `number` | **Incompatibilidad de tipos actual en v9.1.0:** `UploadedAsset` declara un booleano `deduped`, pero la respuesta del servicio no lo incluye. No uses ese campo para determinar si se reemplazó una fuente existente. ## Ejemplo [#example] ```typescript title="upload-fonts.ts" import { readFile } from 'node:fs/promises'; import { GT } from 'generaltranslation'; const gt = new GT({ apiKey: process.env.GT_API_KEY, projectId: process.env.GT_PROJECT_ID, }); const content = (await readFile('./public/fonts/BrandSans.ttf')).toString( 'base64' ); const result = await gt.uploadFonts([ { assetType: 'FONT', content, fileName: 'BrandSans.ttf', }, ]); console.log(result.assets[0].assetKey); ```