R2.06.6translation-length allowance设计

译文的长度变化需在交付时预留

别名: 译文预留 · localization room in handoff · 发运留白

概念解释

源语言定稿的界面,若按当前这一句的宽度锁死盒子,译稿到来时没有合法去处。译文预留(translation-length allowance)是在交付这一刻就把容器写成可增长、可换行、或标明「此位必须单行、译稿不得超过 N」,而不是等语言包进仓库之后再改版面。它是发运材料上的空间预算,不是对语言差异成因的研究。

源语言自己改稿造成的撑版,和译成另一语言之后的撑版,要分开记账。这里只处理后一种:盒子必须在源语言帧上就声明自己还能再吃多少。

机制

实现看见的第一份几何来自源语言帧。按钮按「保存」量宽、列按「状态」量宽、页眉按一行中文标题量高,这些数字会变成布局常数。译稿通常晚于功能冻结,此时改常数等于返工:有的端已经写死约束,有的端已经按截图验收。预留把「还可以再长」写成交付的一部分——弹性容器、允许的第二行、或一张并排的最长译稿示意——实现才能在第一次编码时把弹性写进去,而不是把源语言宽度当成契约。

不预留的后果不是「译得难看」,而是译稿被迫害:译者被要求改短、术语被换成不准确的短词、或关键动作在某一语言里被裁掉后半截。这些损失发生在交付之后,责任却在交付时把宽度当成了已完成。源语言帧看起来疏朗,往往正是因为没把译稿算进预算。

边界

明确只发一种语言、且产品规则禁止后续加语言的内部工具,预留收益很小,但仍应避免把标签做成不可改的像素宽。图标按钮没有译文字符可预留。已被法律或品牌锁定字面、不允许译者改写也不能换行的短句(注册商标、法规简称),预留从「加宽」改成「这一位不准译长,译稿必须等宽处理」——这仍然是交付时写下的约束,不是事后吵架。打印件、固定像素的电视安全框本身没有弹性,预留表现为译稿字数上限,而不是弹性盒子。尚未决定要支持哪些语言时,按已承诺的语言集合预留,不要用「所有语言里最长的那句」去撑一个可能永远不支持的语种。

怎么落地

  • 在源语言交付帧上标出每个会翻译的槽:可换行、可长到第几行、或必须单行并给出译稿字符/宽度上限。
  • 为导航、主按钮、表单错误句这些一换行就改结构的位置,附一张「源句 + 一条已知较长译句」的对照,让实现第一次就按对照里较长的那侧排。
  • 禁止把按钮宽度写成与源句等宽的固定值;最小值可以按源句,最大值必须按预留。
  • 用一条已有的较长译稿(或占位译稿)灌进实现后的界面,不改布局代码。若必须改代码才能放下,说明预留没有写进第一次交付。把弹性补回设计源,而不是要求译者把句子改回源语言的长度。

延伸

  • 同组R2.06.1 占位文案会被直接实现 · R2.06.2 文案长度变化影响布局 · R2.06.3 文案需与设计同步评审 · R2.06.4 文案变量的取值范围需随文案一起交付 · R2.06.5 同一概念在界面各处使用同一措辞
  • 相邻S1.01 文案膨胀与布局弹性 · R2.05 边界情况的交付完备性
  • 站内检索translation-length allowance · localization room · handoff expansion budget

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/R2.06.6