

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Personalizza l'aspetto dei pannelli di controllo e degli elementi visivi incorporati di Amazon Quick Sight
<a name="embedding-runtime-theming"></a>

Puoi utilizzare Amazon Quick Sight Embedding SDK (versione 2.5.0 e successive) per apportare modifiche al tema delle dashboard e degli elementi visivi Amazon Quick Sight incorporati in fase di esecuzione. Il tema Runtime semplifica l'integrazione dell'applicazione Software as a Service (SaaS) con le risorse integrate di Amazon Quick Sight. I temi di runtime ti consentono di sincronizzare il tema dei tuoi contenuti incorporati con i temi dell'applicazione principale in cui sono incorporate le tue risorse Amazon Quick Sight. È inoltre possibile utilizzare il tema del runtime per aggiungere opzioni di personalizzazione per i lettori. Le modifiche ai temi possono essere applicate alle risorse incorporate al momento dell'inizializzazione o per tutta la durata del pannello di controllo o dell'elemento visivo incorporato.

Per ulteriori informazioni sui temi, consulta [Utilizzo di temi in Amazon Quick Sight](themes-in-quicksight.md). Per ulteriori informazioni sull'utilizzo di Amazon Quick Sight Embedding SDK, consulta la [amazon-quicksight-embedding-sdk](https://github.com/awslabs/amazon-quicksight-embedding-sdk)pagina. GitHub

**Prerequisiti**

Prima di iniziare, assicurati di soddisfare i seguenti requisiti.
+ Stai utilizzando Amazon Quick Sight Embedding SDK versione 2.5.0 o successiva.
+ Autorizzazioni per accedere al tema su cui si desidera lavorare. Per concedere le autorizzazioni a un tema in Amazon Quick Sight, effettua una chiamata `UpdateThemePermissions` API o usa l'icona **Condividi** accanto al tema nell'editor di analisi della console Amazon Quick Sight.

## Concetti e terminologia
<a name="runtime-theming-terminology"></a>

La seguente terminologia può essere utile quando lavori con il tema di runtime incorporato.
+ *Tema*: una raccolta di impostazioni che puoi applicare a più analisi e pannelli di controllo che modificano il modo in cui il contenuto viene visualizzato.
+ *ThemeConfiguration*— Un oggetto di configurazione che contiene tutte le proprietà di visualizzazione di un tema.
+ *Sovrascrittura del tema*: un oggetto `ThemeConfiguration` che viene applicato al tema attivo per sovrascrivere alcuni o tutti gli aspetti della visualizzazione del contenuto.
+ *ARN del tema: un* Amazon Resource Name (ARN) che identifica un tema Amazon Quick Sight. Di seguito è riportato un esempio di ARN del tema personalizzato.

  `arn:aws:quicksight:region:account-id:theme/theme-id`

  I temi iniziali forniti da Amazon Quick Sight non hanno una regione nell'ARN del tema. Di seguito è riportato un esempio di ARN del tema iniziale.

  `arn:aws:quicksight::aws:theme/CLASSIC`

## Configurazione
<a name="runtime-theming-setup"></a>

Assicurati di disporre delle informazioni seguenti per iniziare a lavorare con i temi del runtime.
+ Il tema ARNs dei temi che desideri utilizzare. Puoi scegliere un tema esistente oppure crearne uno nuovo. Per ottenere un elenco di tutti i temi e i temi ARNs presenti nel tuo account Amazon Quick Sight, effettua una chiamata all'operazione [ListThemes](https://docs.aws.amazon.com/quicksight/latest/APIReference/API_ListThemes.html)API. Per informazioni sui temi Amazon Quick Sight preimpostati, consulta[Impostazione di un tema predefinito per le analisi di Amazon Quick con Amazon Quick APIs](customizing-quicksight-default-theme.md).
+ Se utilizzi l'incorporamento di utenti registrati, assicurati che l'utente abbia accesso ai temi che desideri utilizzare.

  Se utilizzi l'incorporamento anonimo di utenti, passa un elenco di temi ARNs al `AuthorizedResourceArns` parametro dell'`GenerateEmbedUrlForAnonymousUser`API. Agli utenti anonimi viene concesso l'accesso a qualsiasi tema elencato nel parametro `AuthorizedResourceArns`.

## Interfaccia del metodo SDK
<a name="runtime-theming-sdk-interface"></a>

**Metodi setter**

La tabella seguente descrive i diversi metodi setter che gli sviluppatori possono utilizzare per un tema del runtime.


| Metodo | Description | 
| --- | --- | 
|  `setTheme(themeArn: string)`  |  Sostituisce il tema attivo di un pannello di controllo o di un elemento visivo con un altro tema. Se applicato, la sovrascrittura del tema viene rimossa. Se non hai accesso al tema o se il tema non esiste, viene restituito un errore.  | 
|  `setThemeOverride(themeOverride: ThemeConfiguration)`  |  Imposta un `ThemeConfiguration` dinamico per sovrascrivere il tema attivo corrente. Questo sostituisce la sovrascrittura del tema precedentemente impostato. Tutti i valori che non vengono forniti nel nuovo `ThemeConfiguration` vengono utilizzati di default sui valori del tema correntemente attivo. Se il `ThemeConfiguration` fornito non è valido, viene restituito un errore.  | 

## Inizializzazione del contenuto incorporato con un tema
<a name="runtime-theming-sdk-initialize"></a>

Per inizializzare un pannello di controllo o un elemento visivo incorporato con un tema non predefinito, definisci un oggetto `themeOptions` nei parametri `DashboardContentOptions` o `VisualContentOptions` e imposta la proprietà `themeArn` all'interno di `themeOptions` sull'ARN del tema desiderato.

L'esempio seguente inizializza un pannello di controllo incorporato con il tema `MIDNIGHT`.

```
import { createEmbeddingContext } from 'amazon-quicksight-embedding-sdk';

const embeddingContext = await createEmbeddingContext();

const {
    embedDashboard,
} = embeddingContext;

const frameOptions = {
    url: '<YOUR_EMBED_URL>',
    container: '#experience-container',
};
const contentOptions = {
    themeOptions: {
        themeArn: "arn:aws:quicksight::aws:theme/MIDNIGHT"
    }
};

// Embedding a dashboard experience
const embeddedDashboardExperience = await embedDashboard(frameOptions, contentOptions);
```

## Inizializzazione del contenuto incorporato con la sovrascrittura di un tema
<a name="runtime-theming-runtime-initialize-override"></a>

Gli sviluppatori possono utilizzare le sovrascritture dei temi per definire il tema di un pannello di controllo o di un elemento visivo incorporato durante il runtime. Ciò consente alla dashboard o alla visualizzazione di ereditare un tema da un'applicazione di terze parti senza la necessità di preconfigurare un tema in Amazon Quick Sight. Per inizializzare un pannello di controllo o un elemento visivo incorporato con una sovrascrittura del tema, imposta la proprietà `themeOverride` all'interno di `themeOptions` sui parametri `DashboardContentOptions` o `VisualContentOptions`. L'esempio seguente sostituisce il carattere del tema di un pannello di controllo dal carattere predefinito su `Amazon Ember`.

```
import { createEmbeddingContext } from 'amazon-quicksight-embedding-sdk';

const embeddingContext = await createEmbeddingContext();

const {
    embedDashboard,
} = embeddingContext;

const frameOptions = {
    url: '<YOUR_EMBED_URL>',
    container: '#experience-container',
};
const contentOptions = {
    themeOptions: {
        "themeOverride":{"Typography":{"FontFamilies":[{"FontFamily":"Comic Neue"}]}}
    }
};

// Embedding a dashboard experience
const embeddedDashboardExperience = await embedDashboard(frameOptions, contentOptions);
```

## Inizializzazione del contenuto incorporato con temi precaricati
<a name="runtime-theming-runtime-initialize-preloaded"></a>

Gli sviluppatori possono configurare un set di temi del pannello di controllo da precaricare al momento dell'inizializzazione. Ciò è particolarmente utile per passare rapidamente da una visualizzazione all'altra, ad esempio tra le modalità chiaro e scuro. È possibile inizializzare un pannello di controllo o un elemento visivo incorporato con un massimo di cinque temi precaricati. Per utilizzare temi precaricati, imposta la proprietà `preloadThemes` in `DashboardContentOptions` o `VisualContentOptions` con un array di massimo cinque `themeArns`. L'esempio seguente precarica i temi iniziali `Midnight` e `Rainier` in un pannello di controllo.

```
import { createEmbeddingContext } from 'amazon-quicksight-embedding-sdk';

const embeddingContext = await createEmbeddingContext();

const {
    embedDashboard,
} = embeddingContext;

const frameOptions = {
    url: '<YOUR_EMBED_URL>',
    container: '#experience-container',
};
const contentOptions = {
    themeOptions: {
        "preloadThemes": ["arn:aws:quicksight::aws:theme/RAINIER", "arn:aws:quicksight::aws:theme/MIDNIGHT"]
    }
};

// Embedding a dashboard experience
const embeddedDashboardExperience = await embedDashboard(frameOptions, contentOptions);
```