# General Translation Platform: uploadFonts
URL: https://generaltranslation.com/it/docs/platform/core/reference/gt-class-methods/translation/upload-fonts.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Carica risorse di font permanenti per i workflow di traduzione Lottie. Riferimento API per uploadFonts.

Carica font TrueType o OpenType tramite un progetto, affinché i job di traduzione Lottie della stessa Organization possano utilizzarli durante l&#39;elaborazione del layout.

## Panoramica [#overview]

Chiama `uploadFonts` con risorse di font codificate in Base64. Il metodo suddivide gli input di grandi dimensioni in batch di 50 e restituisce gli identificatori delle risorse archiviate.

```typescript
const result = await gt.uploadFonts(fonts, {
  timeout: 30000,
});
```

Firma:

```typescript
uploadFonts(
  fonts: AssetUpload[],
  options?: UploadAssetsOptions
): Promise<UploadAssetsResponse>
```

*Nota: `uploadFonts` richiede una `apiKey` (o `devApiKey`) e un `projectId` nell&#39;istanza GT.*

## Come funziona [#how-it-works]

* Il contenuto del font è già codificato in Base64 quando viene passato al metodo.
* Ogni font deve avere un nome del file `.ttf` o `.otf` e, una volta decodificato, non deve superare i 20 MB.
* Il progetto determina quale Organization possiede il font. I font caricati vengono mantenuti tra i job di traduzione di tale Organization.
* Il servizio ricava famiglia di font, peso e stile corsivo dai metadati del font, quindi usa come fallback il nome del file. Caricando nuovamente la stessa identità derivata, la risorsa archiviata viene sostituita.
* Gli input con più di 50 font vengono caricati con più richieste.

(Consulta [Carica le risorse del progetto](/docs/platform/openapi/reference/project/upload-assets) per informazioni su convalida, identità derivata e comportamento dei tentativi ripetuti).

## Parametri [#parameters]

| Parametro             | Descrizione                            | Tipo                  | Facoltativo | Predefinito |
| --------------------- | -------------------------------------- | --------------------- | ----------- | ----------- |
| [`fonts`](#fonts)     | Font codificati in Base64 da caricare. | `AssetUpload[]`       | No          | —           |
| [`options`](#options) | Impostazioni della richiesta.          | `UploadAssetsOptions` | Sì          | `{}`        |

### `fonts` [#fonts]

**Tipo** `AssetUpload[]` · **Obbligatorio**

| Campo       | Descrizione                                   | Tipo     | Facoltativo |
| ----------- | --------------------------------------------- | -------- | ----------- |
| `assetType` | Tipo di risorsa. È supportato solo `FONT`.    | `'FONT'` | No          |
| `content`   | Byte del font codificati in Base64.           | `string` | No          |
| `fileName`  | Nome del file con estensione `.ttf` o `.otf`. | `string` | No          |

### `options` [#options]

**Tipo** `UploadAssetsOptions` · **Facoltativo** · **Predefinito** `{}`

| Campo     | Descrizione                               | Tipo     | Facoltativo |
| --------- | ----------------------------------------- | -------- | ----------- |
| `timeout` | Timeout della richiesta, in millisecondi. | `number` | Sì          |

## Restituisce [#returns]

**Tipo** `Promise<UploadAssetsResponse>`

Si risolve con gli identificatori delle risorse archiviate e il numero di font elaborati:

| Proprietà           | Descrizione                                                     | Tipo              |
| ------------------- | --------------------------------------------------------------- | ----------------- |
| `assets`            | Risorse di font archiviate.                                     | `UploadedAsset[]` |
| `assets[].id`       | ID della risorsa Organization archiviata.                       | `string`          |
| `assets[].assetKey` | Identità del font derivata nel formato `<family>-<weight>[-i]`. | `string`          |
| `assets[].fileName` | Nome del file fornito durante il caricamento.                   | `string`          |
| `count`             | Numero di font elaborati.                                       | `number`          |

<Callout type="warn">
  **Incongruenza di tipo nella versione corrente v9.1.0:** `UploadedAsset` dichiara un valore booleano `deduped`, ma la risposta del servizio non lo include. Non utilizzare questo campo per verificare se un font esistente è stato sostituito.
</Callout>

## Esempio [#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);
```

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
