自动检测语言:应用如何选择源语言

Last updated: 2026-09-03

自动检测语言:应用如何选择源语言

自动检测是源语言选择器中的第一个选项。选择它并不意味着应用对源没有意见 — 这意味着应用将使用按块的 OCR 语言提示(对于照片)或 Dart 层的字符集启发式(对于文本),来为每次翻译挑选一个特定的 ML Kit 源语言。

为什么按每次翻译

ML Kit 的设备本地翻译器需要在翻译运行之前下载特定的源语言。自动检测不能意味着"从任何语言翻译";它必须解析为 19 种支持语言中的一种,每次翻译都如此。应用自动执行此解析。

照片的工作原理

对于相机捕获,OCR 引擎为每个识别到的块发出按块的语言提示。提示在整页上聚合;占多数的语言成为该翻译的 ML Kit 源语言。

单语言页面解析清晰:一页韩语字幕解析为韩语,一页法语正文解析为法语。混合脚本页面如果没有任何单一语言占主导,则回退到默认值。

按块翻译使用这些提示更精细。具有英语标题和日语字幕的页面可以使用适当的按块源进行翻译,即使多数语言不明确也是如此。

文本的工作原理

对于文本翻译,应用运行一个 Dart 层的启发式,按脚本类计算字符数:

混合输入遵循多数字符类。空或仅空白输入默认为英语。

启发式很快(对输入的单个线性扫描),并在 ML Kit 调用之前运行。所选的源语言然后用于翻译请求。

自动检测失败的时候

对于这些情况,从选择器手动固定源语言。

自动检测从不沉默

页面在翻译运行时始终具有特定的 ML Kit 源语言。如果启发式返回错误的默认值,翻译可能会出错;如果它返回正确的语言,翻译就有效。没有应用"无法选择语言"的模式 — 它会通过到默认值并进行翻译。

实用建议

对于长的、单语言文档,自动检测有效。对于短片段或混合脚本页面,从选择器手动固定源语言。选择器会把你最近的常用语言放在顶部,因此第二次使用某种语言只需一次点击。