App Store スクリーンショットのローカライズ
承認済みのアートワークを保持し、マーケティングコピーのみをローカライズします。インストール済みフォントを使用して最終テキストを決定論的にレンダリングし、承認済みコピー領域内にのみ合成し、リモート配信には asc レビュー/適用を使用します。
ワークフロー
- ソースPNG、順序、寸法、デバイスファミリー、既存のリモートスクリーンショットを棚卸しします。
- 市場に適したネイティブコピーを作成します。セリングアイデアを維持し、語句が不自然になる場合は直訳は避けます。改行は意図的に維持します。
- 編集前にすべてのソース画像を検査します。
- ソースのマーケティングコピーのみを削除したクリーンマスターを準備します。既存の承認済みクリーンマスターがあればそれを優先します。クリーンアップが必要な場合は、タイトなマスクを使用し、その外側のすべてのピクセルを保持します。
scripts/render_localized_text.pyを使用して正確なローカライズコピーをレンダリングします。グリフカバレッジが確認されたインストールフォントを使用し、最終テキストの描画に画像生成は使用しません。- タイトなテキスト領域ボックスを定義し、最終ビットマップが許可領域内でのみ承認済みソースと異なることを確認します。
- ラベル付きコンタクトシートをレビューし、すべてのCJKタイトルを100%スケールで正確なグリフ、スペル、折り返し、階層、クリーンアップの継ぎ目について検査します。
- 寸法、RGB不透明度、ファイル数、順序、正確なマニフェストコピー、および許可された各領域外の変更ピクセルがゼロであることを検証します。
- ASCレビューアーティファクトを生成し、検査し、承認し、計画されたグループが意図されたロケール/表示タイプマトリックスと完全に一致する場合にのみ plan/apply でアップロードします。明示的な許可なしにリモートスクリーンショットを削除または置換しないでください。
- リモートスクリーンショットを再度リストし、ロケール、デバイスファミリー、数、処理状態を確認します。
画像生成の境界
最終的なローカライズコピーのレンダリングを画像モデルに依頼しないでください。生成されたテキストには、プロンプトが逐語的に指定されていても、置き換えられたグリフ、残骸、または幻覚文字が含まれる可能性があります。
画像生成は、クリーンな背景パッチをローカルで生成できない場合にのみ使用し、置換ではなく削除をリクエストします:
ユースケース: precise-object-edit
アセットタイプ: ローカライズされたApp Storeスクリーンショット用クリーンマスター
入力画像: 編集対象
主なリクエスト: 既存のマーケティングコピーのみを削除し、背景を再構築してください。
制約: 背景、デバイスモックアップ、パースペクティブ、照明、すべての製品スクリーンピクセル、色、クロップ、アスペクト比を保持してください。製品UIの翻訳や再描画は行わないでください。
回避: テキスト、文字、記号、透かし、再デザイン、デバイスの変更、UIの変更、製品画像の変更を行わないでください。
構成や保護されたアートワークが変更された場合は結果を拒否します。生成されたビットマップ全体を使用せず、許可された領域内にレビュー済みのクリーンアップパッチのみを合成します。
決定論的合成
ソースコピーがテクスチャ背景上に軽く配置されている場合は、ローカルでクリーンマスターを準備します:
python scripts/prepare_clean_master.py \
--source /path/to/approved.png \
--output /path/to/clean-master.png \
--box x,y,width,height
JSONマニフェストから正確なテキストをレンダリングします:
python scripts/render_localized_text.py --manifest /path/to/text-manifest.json
python scripts/verify_localized_text.py --manifest /path/to/text-manifest.json
references/manifest.md のスキーマを使用してJSONマニフェストを作成し、次を実行します:
python scripts/compose_localized_patch.py --manifest /path/to/manifest.json
スクリプトは、生成された編集を正確なソース寸法にリサイズし、許可された長方形とフェザーエッジ内でのみブレンドし、不透明RGB PNGを書き込み、許可領域外のデコードされたピクセルがソースと同一であることを検証します。
モデルのドリフトを隠すためにボックスを拡大しないでください。マーケティングコピーの周りをタイトにします。許可領域に製品UIを含めないでください。
App Store QA
- 異なるApple表示タイプをターゲットにしない限り、ソース寸法を保持します。
- 不透明RGB出力を要求し、アルファを含むPNGは拒否します。
- ストアフロントと表示タイプごとに1つの順序付けられたセットを維持します。
- 市場に適したフォント/グリフを使用し、CJK出力を目視検査します。
- すべてのタイトルをサムネイルスケールで、すべてのサブタイトルを100%スケールで確認します。
- 表示されているコピーを文字ごとにレビュー済みマニフェストと比較します。OCRはラテン文字QAに役立つ場合がありますが、CJKの目視検査を決して置き換えるものではありません。
- 残留するソース文字、二重ストローク、置換グリフ、豆腐ボックス、予期しない句読点、またはモデル生成テキストを拒否します。
- 領域外のピクセル変更がゼロであることを厳格な不変条件として扱います。
ASCアップロードの安全性
アップロード前に、インストールされている asc-shots-pipeline および asc-cli-usage スキルを読んでください。asc screenshots --help およびコマンド固有の --help で現在のフラグを確認します。
推奨:
asc screenshots review-generate --framed-dir OUTPUT_ROOT --output-dir REVIEW_DIR
asc screenshots review-open --output-dir REVIEW_DIR
asc screenshots review-approve --all-ready --output-dir REVIEW_DIR
asc screenshots plan --app APP_ID --version VERSION --review-output-dir REVIEW_DIR --output json
asc screenshots apply --app APP_ID --version VERSION --review-output-dir REVIEW_DIR --confirm --output json
plan/apply で意図したロケールマッピングを表現できない場合は、正確なバージョン-ロケールIDを解決し、そのロケールのみに asc screenshots upload を使用します。アップロード前後にスクリーンショットをリストします。アップロードが既存のスクリーンショットを置き換えると想定しないでください。最初にCLIの動作とAppleの制限を調査します。
一部の寸法は複数のApple表示タイプで受け入れられます。たとえば、1290x2796 は APP_IPHONE_67 と APP_IPHONE_69 の両方として検証される可能性があります。plan出力が異なる表示タイプ間で同じファイルを複製する場合は、適用しないでください。一致するドライラン実行後、明示的な --device-type を指定してアプリスコープのアップロードを実行します:
asc screenshots upload --app APP_ID --version-id VERSION_ID --path OUTPUT_ROOT --device-type APP_IPHONE_67 --dry-run
asc screenshots upload --app APP_ID --version-id VERSION_ID --path OUTPUT_ROOT --device-type APP_IPHONE_67
リソース
scripts/compose_localized_patch.py: ピクセルロックされた合成と検証。references/manifest.md: マニフェストスキーマと例。