Share via


Applicare i temi del report

I temi dei report di Power BI consentono di applicare le modifiche di progettazione all'intero report. Ad esempio, è possibile includere i colori aziendali e modificare i set di icone. Quando si applica un tema del report, tutti gli oggetti visivi del report usano per impostazione predefinita i colori e la formattazione del tema selezionato. Per altre informazioni sulle impostazioni del tema e su come sono progettate, vedere Formato di file JSON del tema del report.

È possibile salvare e pubblicare un report con un tema applicato. Il tema applicato è il tema predefinito per questo report quando viene caricato nel servizio Power BI o nell'analisi incorporata di Power BI.

Gli sviluppatori che usano l'analisi incorporata di Power BI hanno anche la possibilità di incorporare un report con un tema personalizzato applicato anziché il tema predefinito per il report. L'applicazione di un tema in questo modo carica lo stesso report con temi diversi a utenti diversi in base alle impostazioni.

Oggetto tema report

In questa sezione viene descritto l'oggetto tema del report utilizzato per rappresentare i temi. Un IReportTheme tipo di oggetto può essere passato alla configurazione incorporata.

interface IEmbedConfiguration extends IEmbedConfigurationBase {
  ...
  theme?: models.IReportTheme;
}

L'oggetto tema del report deve avere un singolo parametro denominato themeJson. Questo campo deve contenere l'oggetto JSON che rappresenta le impostazioni del tema. Per altre informazioni, vedere la pagina Formato file JSON del tema del report .

interface IReportTheme {}
interface ICustomTheme extends IReportTheme {
  themeJson: any;
}

Applicare un tema a un report

Il tema applicato può essere modificato anche dopo il caricamento del report. Quando si applica il tema dopo il caricamento del report, l'utente finale può selezionare un tema da un elenco e visualizzare immediatamente le modifiche di stile applicate al report senza ricaricare.

Applicare un tema al caricamento

Questo esempio è utile se si desidera applicare un tema personalizzato al caricamento del report.

// Parse the theme JSON file into an object
let themeJsonObject = parseJsonfile(path);
let embedConfig = {
    …
    theme: {
        themeJson: themeJsonObject
    }
};

let report = powerbi.embed(embedContainer, embedConfig);

Applicare il tema in fase di esecuzione

Il metodo apply è utile se si desidera modificare il tema dopo il caricamento del report senza ricaricare il report.

La classe Report client di Power BI definisce il applyTheme metodo come:

applyTheme(theme: models.IReportTheme): Promise<void>

L'API applyTheme modifica il tema applicato al report in fase di esecuzione.

...
// Parse the theme JSON file into an object
let themeJsonObject = parseJsonfile(path); 

// Apply the theme
report.applyTheme({ themeJson: themeJsonObject });

Applicare un tema quando si crea un report

È possibile creare un nuovo report incorporato con un tema applicato. I nuovi oggetti visivi aggiunti al report rispettano lo stile del tema. Vedere anche la pagina Creare, modificare e salvare un report incorporato .

Questo esempio è utile se si desidera applicare un tema personalizzato a un nuovo report.

// Parse the theme JSON file into an object
let themeJsonObject  = parseJsonfile(path);
let embedCreateConfiguration = {
  …
  theme: {
    themeJson: themeJsonObject 
  }
};

let report = powerbi.createReport(embedContainer, embedCreateConfiguration);

Nota

parseJsonfile è una funzione che deve essere implementata nel codice dell'applicazione e non fa parte dell'SDK.

Reimpostare un tema del report

Il metodo reset è utile se si vuole reimpostare il tema del report sul tema predefinito, ma non si dispone del file JSON del tema.

La classe Report client di Power BI definisce il resetTheme metodo come:

resetTheme(): Promise<void>

La chiamata all'API resetTheme torna al tema predefinito del report.

// Apply the theme
report.resetTheme();

Limitazioni e considerazioni

  • L'uso dell'API applyTheme descritto in precedenza sostituisce completamente il tema predefinito con il nuovo file JSON. L'API non estenderà la configurazione del tema predefinito.
  • Quando si applicano temi, alcuni casi non cambiano gli oggetti visivi nel report come previsto. Per altre informazioni, vedere Situazioni in cui i colori del tema del report non vengono applicati ai report.
  • Non è possibile usare l'API per applicare un tema e impostare contemporaneamente un livello di contrasto. Se si configurano entrambe le proprietà, l'API usa il livello di contrasto specificato ma ignora l'impostazione del tema.