無料アカウントを作成して、AI対応ローカリゼーションサービスでコンテンツを翻訳するための毎月30,000無料文字数を獲得しましょう。
開始にクレジットカードは不要です!
当社のi18nファイル翻訳サービスは、さまざまなプラットフォームやフレームワークで使用される幅広いファイル形式をサポートしています。
| 形式 | 使用先 | 新規文字列のみの翻訳をサポート | コメントをサポート | メタデータ翻訳制御をサポート |
|---|---|---|---|---|
JSON / JSONC | JavaScript, TypeScript · i18next, React, Vue, Angular | |||
XML | Android strings.xml · iOS plist · Generic XML · .NET ResX | |||
YAML / YML | Ruby on Rails · Node.js · 設定ファイル | |||
ARB | Flutter · Dart | |||
PO / POT | GNU Gettext · PHP, Python, WordPress, Ruby | |||
XLIFF | プロフェッショナルCATツール · ローカリゼーションプラットフォーム · Angular | |||
.properties | Java · Spring Boot · Android | |||
CSV / TSV | スプレッドシート · カスタムローカリゼーションワークフロー | |||
MD | ドキュメント · READMEファイル · Jekyll, Hugo, Docusaurus | |||
TXT | アプリのローカリゼーションに使用されるプレーンテキストファイル |
i18nファイルの翻訳は、当社のサービスを利用することで簡単に行えます。以下の手順に従って国際化ファイルを翻訳し、プロジェクト全体の一貫性を確保してください。
ソース言語とターゲット言語を設定:
ソース言語(例: en-US)を選択します。1つ以上のターゲット言語(例: fr-FR、de-DE)を追加し、短縮形、短縮、用語、ファイル関連付けなどの翻訳オプションを設定します。
重要: 「新規文字列のみ翻訳」を有効にする場合、アップロードするターゲットファイルには、その言語の以前の翻訳済み文字列が既に含まれている必要があります(例: フランス語のファイルには、古いフランス語の翻訳がすべて含まれている必要があります)。システムは、不足している/翻訳されていない文字列のみを翻訳します。
ターゲットファイルとしてソースファイルと同じものをアップロードした場合(フランス語のコンテンツが含まれていない場合)、何も翻訳されません。これは、どの文字列が新しく、どれが古いかを判別する方法がないためです。
注: ターゲットファイルのアップロードは任意です。ターゲットファイルをアップロードしない場合、「新規文字列のみ翻訳」が有効かどうかにかかわらず、すべての文字列が翻訳されます。
ファイル命名規則:
アップロードしたファイルが言語コード(例: fr.json、de.json)と完全に一致する名前でない場合、システムが異なる言語で同じ文字列が含まれていることを認識できるよう、ソースファイルの名前と一致させる必要があります。例:
/en/common.json
/fr/common.json
/de/common.json
これにより、翻訳が正しく並びます。ファイル名がソースファイル名と異なる場合、システムはそれらを異なる名前空間に属するものとして扱います。i18nにおいて、名前空間とはアプリのパーツごとに文字列を整理するために使用される単なる別ファイルのことです(例: 一般的な文字列用のcommon.json、ログイン用のauth.json、ダッシュボード用のdashboard.json)。
各名前空間には、すべての言語フォルダに対応するファイルが必要です:
/en/common.json
/en/auth.json
/fr/common.json
/fr/auth.json
各言語で同じファイル名を使用することで、システムは文字列を正しく照合できます。
0196e881-fb54-7150-a292-5b1e8f70a8ae.zip)。アーカイブには、ターゲット言語ごとの翻訳済みファイルが含まれており、言語コードごとに個別のフォルダに整理されています。当社のプラットフォームは、高度なAI対応翻訳によりi18nファイルのローカリゼーションを効率化し、ファイル構造とコンテキストを保持しながら、正確で効率的な結果を提供します。
国際化(i18n)とは、コードを変更することなく、さまざまな言語や地域に適応できるようにソフトウェアを設計するプロセスです。ローカリゼーション(l10n)とは、文字列の翻訳、日付形式、通貨、文化的参照の調整など、特定のロケールに合わせてソフトウェアを実際に適応させるプロセスです。i18nの「18」は、「internationalization」の「i」と「n」の間の18文字を表しています。
i18nファイル翻訳は、ローカリゼーションワークフローの中心です。開発者はソースコードにテキストをハードコーディングする代わりに、ユーザー向けのすべての文字列をJSON、YAML、PO、XLIFF、ARB、Propertiesファイルなどのリソースファイルに外部化します。これらのファイルは、すべての翻訳の信頼できる唯一の情報源となり、アプリケーションとともに管理、バージョン管理、デプロイされます。
グローバル製品の場合、i18nファイルを数十の言語に翻訳する必要がある場合があります。これを大規模に管理するには、自動化、一貫性、および形式を認識するツールが必要です。これこそが、当社のAI対応i18nファイル翻訳サービスが提供するものです。
i18nファイル形式の選択は、通常、技術スタックによって異なります。各形式には、構造、ツール、プラットフォームサポートにおいて異なる強みがあります:
flutter gen-l10nによってコンパイルされる、FlutterおよびDartアプリのローカリゼーション標準です。ResourceBundleを使用するエンタープライズJavaアプリケーションで使用されます。当社のi18nファイル翻訳サービスの最も強力な機能の1つは、増分更新です。これは、既にローカライズされているコンテンツを再翻訳することなく、新規または変更された文字列のみを翻訳する機能です。これにより、積極的に開発されているプロジェクトの翻訳コストと処理時間が大幅に削減されます。
増分更新を使用するには、各言語のソースファイルと既存のターゲットファイルの両方をアップロードします。当社のシステムは両方のファイルに存在するキーを比較し、ターゲットに不足している文字列のみを翻訳します。これは、スプリントやリリースごとに新しい文字列が追加される継続的な開発サイクルにおいて特に価値があります。
増分更新でサポートされている形式は上記の表に記載されています。その他の形式の場合でも、ターゲットファイルをアップロードすることは用語集のコンテキストとして役立ち、翻訳実行全体で一貫した用語を確保できます。
当社のi18nファイル翻訳サービスは、最新のローカリゼーションシナリオの全範囲を処理します:
ng extract-i18nによって生成されたXLIFF 1.2および2.0ファイルを翻訳します。JSON / JSONC、XML (Android strings.xml, .NET ResX, 汎用)、YAML / YML、ARB (Flutter)、PO / POT (GNU Gettext)、XLIFF 1.2および2.0、.properties (Java)、CSV / TSV、Markdown (.md)、およびプレーンテキスト (.txt)をサポートしています。ファイルは個別に、または最大5MBのZIPアーカイブとしてアップロードできます。
はい。1つのジョブで複数のターゲット言語を追加できます。当社のサービスはすべての言語ペアを処理し、言語コードごとに整理されたZIPアーカイブ(例: fr/, de/, ja/)に結果をパッケージ化します。
各言語のソースファイルと、既存の翻訳が含まれているターゲットファイルをアップロードします。当社のシステムはソースには存在するがターゲットには不足している文字列を特定し、それらのみを翻訳します。これにより、既に支払い済みのコンテンツの再翻訳を回避し、手動編集の上書きを防ぎます。
最大アップロードサイズは、ファイルまたはZIPアーカイブごとに5MBです。非常に大規模なプロジェクトの場合は、名前空間ごとにファイルを分割するか、複数のジョブをアップロードすることを検討してください。このページでジョブの進捗状況をリアルタイムで監視し、完了したすべてのジョブに「ファイル」ページからアクセスできます。
異なる言語フォルダにある同じ名前のファイルは、同じ名前空間として扱われます(例: /en/common.jsonと/fr/common.json)。名前が異なるファイルは、別の名前空間として扱われます。正しい文字列照合を確実にするために、すべての言語フォルダで一貫したファイル名を使用してください。