Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Power BI embedded tema API', renk paletlerini ve diğer stilleri Power BI raporlarına tanımlar ve uygular. Farklı rapor kullanıcıları için özelleştirilmiş temalar uygulamak veya kullanıcıların kendi genel görünüm ve görünümlerini seçmesine izin vermek için temalar özelliğini kullanın.
Rapor renklerini ve modunu özelleştirPower BI tümleşik analiz oyun alanında, kullanıcıların Power BI tümleşik analiz raporunu görüntülerken farklı renkler ve arka plan modları seçmesine olanak sağlamak için tema API'sini kullanır.
Vitrin raporu aşağıdakiler için tema özelliğini kullanır:
- Rapor rengi temalarını ve arka plan modlarını tanımlayın.
- Rapor yüküne belirli bir renk teması uygulayın.
- Kullanıcıların rapor görüntüleme oturumları sırasında temaları ve arka plan modlarını değiştirmesine izin verin.
Rapor temaları hakkında daha fazla bilgi için bkz. Power BI Desktop'ta rapor temalarını kullanma.
Tema vitrini deneyimi
Rapor renklerini ve modunu özelleştirme
Tema ve mod seçme
Rapor görüntüleyicileri farklı bir renk teması veya modu uygulamak için Tema seç düğmesini
Görüntüleyiciler listeden farklı bir tema seçebilir ve veri, etiket ve diğer öğe renklerindeki anında değişiklikleri görebilir. Seçili tema rapordaki tüm eklenmiş görselleri etkiler.
İzleyiciler, renk teması seçiminden bağımsız olarak açık renkli metin içeren koyu renkli bir rapor arka planı oluşturmak için Koyu mod
Tema seçin
Tema vitrini kodu
Vitrin uygulamasını uygulamaya yönelik kod, PowerBI-Embedded-Showcases GitHub deposundadır.
HTML sayfası rapor kapsayıcısını oluşturur ve Tema seç düğmesini ve iletişim kutusunuve tema JSON nesnelerini yükler.raporu JavaScript raporu ekler, varsayılan temayı yükler ve tema değiştirme deneyimini uygular.
Rapor teması JSON nesneleriyle tema tanımlama
jsonDataColors nesneleri tanımlar.
Aşağıdaki jsonDataColors nesnesi vitrin Tidal temasını tanımlar. Yıldız işareti *, rapordaki tüm görsellere genel olarak bir ayar uygular.
const jsonDataColors = [
...
{
"name": "Tidal",
"dataColors": ["#094782", "#0B72D7", "#098BF5", "#54B5FB", "#71C0A7", "#57B956", "#478F48", "#326633"],
"tableAccent": "#094782",
"visualStyles": {
"*": {
"*": {
"background": [{ "show": true, "transparency": 3 }],
"visualHeader": [{
"foreground": { "solid": { "color": "#094782" } },
"transparency": 3
}]
}
},
"group": { "*": { "background": [{ "show": false }] } },
"basicShape": { "*": { "background": [{ "show": false }] } },
"image": { "*": { "background": [{ "show": false }] } },
"page": {
"*": {
"background": [{ "transparency": 100 }],
}
}
}
}
...
]
Rapor teması JSON nesne dosyası biçimi ve özellikleri hakkında daha fazla bilgi için bkz. Rapor teması JSON dosya biçimi.
Arka plan modlarını tanımlama
themes.js dosyası, Açık ve Koyu arka plan modlarını açıklayan themes nesneleri de tanımlar. Açık ve Koyu arka plan modlarını tanımlamak için, themes nesnesi beyaz arka planlı bir tema ve karşıtlıklı, koyu renkli arka plan içeren başka bir tema belirtir. Koyu arka plan nesnesi, diğer yapısal ve metin renklerinin değerlerini de koyu arka planda görünür olacak şekilde ayarlar.
Ekleme yapılandırmasıyla tema uygulama ve applyTheme
Vitrin themeJson parametresi çeşitli renk temalarını tanımlar. JavaScript
Temaları etkinleştirmek için, rapor ekleme yapılandırması temalar JSON nesnesine işaret eden bir themeJson parametresiyle bir theme özniteliği belirtir. Vitrin ekleme yapılandırması, rapor yükünde 0veri rengi kimliğine sahip Default temasını uygular:
let config = {
...
theme: { themeJson: jsonDataColors[0] },
};
Görüntüleyici oturumu sırasında farklı bir tema veya mod seçerse, applyTheme işlevi seçili veri rengine ve moduna göre yeni bir tema nesnesi tanımlar ve uygular. Aşağıdaki kod vitrin applyTheme işlevini gösterir:
async function applyTheme() {
// Get active data-color ID
activeDataColorId = Number($("input[name=data-color]:checked", "#theme-dropdown")[0].getAttribute("id").slice(-1));
// Get the theme state from the slider toggle
let activeThemeSlider = $("#theme-slider").get(0);
// Get the index of the theme based on the state of the slider
// 1 => Dark theme
// 0 => Light theme
const themeId = (activeThemeSlider.checked) ? 1 : 0;
// Create new theme object
let newTheme = {};
// Append the data colors and the mode
$.extend(newTheme, jsonDataColors[activeDataColorId], themes[themeId]);
// Apply the theme to the report
await themesShowcaseState.themesReport.applyTheme({ themeJson: newTheme });
}