分享方式:


將本機語言新增至 Power BI 視覺效果

Power BI 支援一系列本機語言 (部分機器翻譯)。 您可以擷取 Power BI 地區設定語言,並用以顯示視覺效果中的內容。

下列索引標籤顯示同一「範例條形圖」視覺效果以不同語言顯示內容的範例。 這些長條圖分別使用不同的地區設定語言 (英文、巴斯克文和印度文) 建立,使用的語言會顯示在工具提示中。

注意

  • API 1.10.0 和更高版本支援視覺效果程式碼中的當地語系化管理員。
  • 在開發期間,針對開發視覺效果進行偵錯不支援當地語系化。

如何將本機 Power BI 語言新增至視覺效果

若要將本機 Power BI 語言新增至視覺效果,請遵循下列步驟:

  1. 設定您的環境以顯示非英文的語言

  2. 設置本機 Power BI 語言

  3. 設定視覺效果顯示名稱

  4. 建立語言資料夾

  5. 為每個語言新增資源檔

  6. 建立新的 localizationManager 執行個體

  7. 呼叫 getDisplayName 函式

步驟 1 - 設定您的環境以顯示非英文的語言

若要測試您的視覺效果,請將 Power BI 設定為非英文的語言。 本節說明如何變更 Power BI Desktop 和 Power BI 服務的設定,使其使用非英文的本機語言。

  • Power BI Desktop - 從 https://powerbi.microsoft.com 下載 Power BI Desktop 的當地語系化版本

  • Power BI 服務 - 如果您使用 Power BI 服務 (入口網站),請在設定中變更您的語言:

    1. 登入 PowerBI.com

    2. 瀏覽至 [設定]>[一般]

      Power BI 服務中 [設定]、[一般]、[功能表] 選項的螢幕擷取畫面。

    3. 選取 [選取顯示語言],以選取您想要 Power BI 使用的語言。

      顯示 Fabric 中語言設定的螢幕擷取畫面。>

步驟 2 - 取得地區設定 Power BI 語言

本機 Power BI 語言會在視覺效果初始化期間以名為 locale 的字串傳遞。 如果在 Power BI 中變更地區設定語言,則系統會以新語言再次產生視覺效果。

private locale: string;
...
this.locale = options.host.locale;

注意

在 Power BI Desktop 中,locale 屬性包含已安裝 Power BI Desktop 的語言。

步驟 3 - 設定視覺效果顯示名稱

每個視覺效果都會在屬性窗格中顯示資訊。 例如,使用 pbiviz new 命令建立的非本地化自訂視覺效果,將會在屬性窗格中顯示 [類別資料] 和 [量值資料] 欄位。

螢幕擷取畫面:顯示新建立 Power BI 視覺效果中的類別資料和量值資料欄位。

屬性窗格顯示欄位定義於 capabilities.json 檔案中。 每個顯示欄位都是使用 displayName 屬性來定義。 將 displayNameKey 新增至每個您想要本地化的顯示名稱。

{
    "dataRoles": [
        {
            "displayName": "Category Data",
            "displayNameKey": "VisualCategoryDataNameKey1",
            "name": "category",
            "kind": "Grouping"
        },
        {
            "displayName": "Measure Data",
            "displayNameKey": "VisualMeasureDataNameKey2",
            "name": "measure",
            "kind": "Measure"
        }
    ]
}

步驟 4 - 建立語言資料夾

若要建立本地化的視覺效果,您的專案必須有語言資料夾。 在您的專案中,建立名為 stringResources 的資料夾。 此資料夾包含每個您想要視覺效果支援的本機語言子資料夾。 例如,若要支持阿拉伯文和希伯來文,請以下列方式新增兩個資料夾:

視覺效果專案資料夾的 VS Code 螢幕擷取畫面。字串資源資料夾有兩個子資料夾,一個用於阿拉伯文,一個用於希伯來文。

步驟 5 - 為每個語言新增資源檔

針對您想要視覺效果支援的每個語言,在適當的 stringResources 子資料夾中新增 resources.resjson JSON 檔案。 這些檔案包含地區設定語言資訊,以及用於取代每個 displayNameKey 的當地語系化字串值。

視覺效果項目資料夾的 VS Code 螢幕擷取畫面。字串資源資料夾中的每個子資料夾都有一個資源點 resjson 檔案。

每個 JSON 檔案都會定義一個支援的地區設定語言。 將您要使用的所有當地語系化字串新增至每個 resources.resjson 檔案。

範例

  • 每個 displayNameKey 都有「俄文」字串的 resources.resjson 檔案。

    {
        ...
        "Role_Legend": "Обозначения",
        "Role_task": "Задача",
        "Role_StartDate": "Дата начала",
        "Role_Duration": "Длительность"
        ...
    }
    
  • 每個 displayNameKey 都有「希伯來文」字串的 resources.resjson 檔案。

    {
        ...
        "Role_Legend": "מקרא",
        "Role_task": "משימה",
        "Role_StartDate": "תאריך התחלה",
        "Role_Duration": "משך זמן"
        ...
    }
    

步驟 6 - 建立新的 localizationManager 執行個體

在視覺效果的程式碼中建立新的 localizationManager 執行個體。

private localizationManager: ILocalizationManager;

constructor(options: VisualConstructorOptions) {
    this.localizationManager = options.host.createLocalizationManager();
}

步驟 7 - 呼叫 getDisplayName 函式

建立新的 localizationManager 執行個體之後,您可以呼叫當地語系化管理員的 getDisplayName 函式,並搭配 resources.resjson 中定義的字串索引鍵引數。

例如,下列程式碼針對 en-US 會傳回 Legend,針對 ru-RU 會傳回 Обозначения

let legend: string = this.localization.getDisplayName("Role_Legend");

格式窗格和分析窗格當地語系化

注意

適用於 API 5.1+ 版

若要支援格式窗格和分析窗格元件的當地語系化,請將當地語系化字串設定如下:

displayName: this.localization.getDisplayName("Font_Color_DisplayNameKey");
description: this.localization.getDisplayName("Font_Color_DescriptionKey");

如需將格式化模型當地語系化,請參閱格式窗格當地語系化 (部分機器翻譯)。
如需當地語系化格式化模型公用程式,請參閱格式化模型公用程式 - 當地語系化 (部分機器翻譯)。

支援的語言

下表包含 Power BI 中支援的所有語言清單,以及 locale 變數針對每個語言傳回的字串。

地區設定字串 語言
ar-SA العربية (阿拉伯文)
bg-BG български (保加利亞文)
ca-ES català (加泰蘭文)
cs-CZ čeština (捷克文)
da-DK dansk (丹麥文)
de-DE Deutsche (德文)
el-GR ελληνικά (希臘文)
zh-TW English (英文)
es-ES español service (西班牙文)
et-EE eesti (愛沙尼亞文)
eU-ES Euskal (巴斯克文)
fi-FI suomi (芬蘭文)
fr-FR français (法文)
gl-ES galego (加利西亞文)
he-IL עברית (希伯來文)
hi-IN हिन्दी (印度文)
hr-HR hrvatski (克羅埃西亞文)
hu-HU magyar (匈牙利文)
id-ID Bahasa Indonesia (印尼文)
it-IT italiano (義大利文)
ja-JP 日本の (日文)
kk-KZ Қазақ (哈薩克文)
ko-KR 한국의 (韓文)
lt-LT Lietuvos (立陶宛文)
lv-LV Latvijas (拉脫維亞文)
ms-MY Bahasa Melayu (馬來文)
nb-NO norsk (挪威文)
nl-NL Nederlands (荷蘭文)
pl-PL polski (波蘭文)
pt-BR português (葡萄牙文)
pt-PT português (葡萄牙文)
ro-RO românesc (羅馬尼亞文)
ru-RU русский (俄文)
sk-SK slovenský (斯洛伐克文)
sl-SI slovenski (斯洛維尼亞文)
sr-Cyrl-RS српски (塞爾維亞文)
sr-Latn-RS srpski (塞爾維亞文)
sv-SE svenska (瑞典文)
th-TH ไทย (泰文)
tr-TR Türk (土耳其文)
uk-UA український (烏克蘭文)
vi-VN tiếng Việt (越南文)
zh-CN 中国 (簡體中文)
zh-TW 中國 (繁體中文)

格式化公用程式 (部分機器翻譯)

有任何問題嗎? 詢問 Power BI 社群 (英文)