Webデザイナは、ブラウザの言語設定によって言語を自動的に検出し、英語、日本語、中国語で表示されます。このトピックスでは、サポートされている言語に対してブラウザと異なるUI言語を設定する方法と、明示的にサポートされていない言語にカスタムローカリゼーションを追加する方法について説明します。
Webデザイナの表示言語を設定するには、初期化中にlanguageプロパティを使用します。Webデザイナを英語(en-US)、日本語(ja-JP)、中国語(zh-CN)で表示できます。
Index.html |
コードのコピー
|
---|---|
<!DOCTYPE html> <html> <head> <!-- パッケージがインストールされた場所からこれらのファイルを取得します。\node_modules\@mescius\activereportsnet-designer\dist --> <link rel="stylesheet" href="web-designer.css" /> <script src="web-designer.js"></script> </head> <body> <div id="ar-web-designer" class="ar-web-designer"> </div> <script> GrapeCity.ActiveReports.Designer.create('#ar-web-designer', { language: 'ja-JP' }); </script> </body> </html> |
WebデザイナのNPMパッケージを使用して、パッケージのactivereportsnet-designer.ja\dist\docsフォルダにあるcustom-resources.jsonファイルからリソース文字列を使用できます。custom-resources.jsonファイルには、ファイルに保存されているリソースがあります。
custom-resources.jsonの構造 |
コードのコピー
|
---|---|
{ "ns": "bundle namespace", "lng": "bundle language", "resources": Record<string,any> } |
WebデザイナのUIにカスタムローカリゼーションを追加するには、次の手順を実行します。
fr-resources.jsonのサンプルコード |
コードのコピー
|
---|---|
[ { "ns": "components", "lng": "fr-FR", "resources": { "appBar": { "btnPreview": "Aperçu", "btnFile": "Déposer", "btnHome": "Maison", "btnInsert": "Insérer", "textUnsavedChanges": "Modifications non enregistrées", "btnParameters": "Paramètres" }, "menu": { "btnClose": "Fermer", "titlePin": "Broche", "btnLayerList": "Couches", "btnGroupEditor": "Éditeur de groupe", "btnReportExplorer": "Explorateur" } } } ] |
翻訳されたリソースバンドルがfr-resources.jsonファイルにあるため、このファイルをロードし、addLanguage()とlanguageプロパティを使用して Webデザイナをローカライズします。
Index.html |
コードのコピー
|
---|---|
<!DOCTYPE html> <html> <head> <!--パッケージがインストールされた場所からこれらのファイルを取得します。\node_modules\@mescius\activereportsnet-designer\dist--> <link rel="stylesheet" href="web-designer.css" /> <script src="web-designer.js"></script> </head> <body> <div id="ar-web-designer" class="ar-web-designer"> </div> <script> fetch("./fr-resources.json").then(res => res.json()).then((res) => { var languageResource = res; GrapeCity.ActiveReports.Designer.addLanguage('fr-FR', languageResource); GrapeCity.ActiveReports.Designer.create('#ar-web-designer', { language: 'fr-FR' }); }); </script> </body> </html> |
別のアプローチとしては、custom-resources.jsonから翻訳されたリソース文字列をJSONオブジェクトとして直接渡し、addLanguage()とlanguageプロパティを使用して Webデザイナをローカライズします。
Index.html |
コードのコピー
|
---|---|
<!DOCTYPE html> <html> <head> <!--パッケージがインストールされた場所からこれらのファイルを取得します。\node_modules\@mescius\activereportsnet-designer\dist--> <link rel="stylesheet" href="web-designer.css" /> <script src="web-designer.js"></script> </head> <body> <div id="ar-web-designer" class="ar-web-designer"> </div> <script> var resourceBundles = [ { "ns": "components", "lng": "fr-FR", "resources": { "appBar": { "btnPreview": "Aperçu", "btnFile": "Déposer", "btnHome": "Maison", "btnInsert": "Insérer", "textUnsavedChanges": "Modifications non enregistrées", "btnParameters": "Paramètres" }, "menu": { "btnClose": "Fermer", "titlePin": "Broche", "btnLayerList": "Couches", "btnGroupEditor": "Éditeur de groupe", "btnReportExplorer": "Explorateur" } } } ]; GrapeCity.ActiveReports.Designer.addLanguage('fr-FR', resourceBundles); GrapeCity.ActiveReports.Designer.create('#ar-web-designer', { language: 'fr-FR' }); </script> </body> </html> |