某天,老闆說我們的產品,
即將在日本發行,
身為一個專業的PM,
要趕快讓團隊知道。
因為,寫死在程式碼的東西,
快要曝光了。
回想人生的第一款產品,當年不是只有在台灣發行,還有在日本、美國營運,遇到的第一個挑戰,其實就是多國語言的版本。當時知道,要發行海外時,就開始後悔當時寫的遊戲內容。你可以想像「降龍寶刀」這樣的東西,到底要怎麼翻譯成英文或是日文。
記得當時曾經討論過一個「議題」,請問,在遊戲裡面的怪物「狼」,他的英文應該是要叫「Wolf」,還是「a wolf」,這個「狼」到底是指「怪物的名字」還是「怪物的學名」呢?到底需不需要加上冠詞「a」,還真的在這件事情上發生過爭執,是不是很幼稚有趣。
後來也有經手一款日本遊戲要在台灣在地化的產品,由於當時的遊戲內容也是高達數萬字需要進行翻譯,於是找了一些外文系的學生、翻譯社、還有懂日文的同事,一起進行翻譯,最後,遇到最大的問題,居然是文字校正,因為太多人同時進行翻譯,結果遊戲的專有名詞,各種語句文法,文章的理解都不一樣,最後還會因為各自對於理解上的堅持,而發生爭執。當然,最後還是找了專人校正,以這位的理解為主,避免認知上的分歧。
當然除了翻譯,還有更棘手的部分。那就是文字的置換。大家可能都以為,多國語言版本不就是各國文字一套,然後做文字切換嗎?難的應該就是翻譯吧,還有什麼更麻煩的?
簡單舉個例子,

交易訊息通知:
親愛的顧客 AAA 您好,您於 2022/3/31 08:25:31 成功購買 XXX 一套,消費金額為 2500元整。
如果要翻譯成日文和英文,會發生甚麼事?
相信聰明的你,應該已經猜到了,這個麻煩就是「文法」。
因為很多時候,這種提示訊息,是會被寫死在程式碼裡面的,於是這些工程師就要花無數個夜晚,去將程式碼裡面的「文字」進行調整。
除了企劃要去校正翻譯、工程師要去置換系統訊息,那設計師總可以逃過一劫了吧。不,設計師也是蠻可憐的,因為不同語言,文字的長度就會有所不同,因為長度不同,就會發現「排版」受到影響,設計師也要全面的檢查每一個頁面,若是有發現跑版的部分,也是需要進行調整…。如果有發現部分文字是用「圖」呈現的,那就會需要重新繪製…。
因為圖片也會有多國語言版本的問題,也就會有資源取用的問題。由於圖片的檔案本身較大,如果一組語言的圖片假設檔案大小為100M,如果有中文、日文、英文的語言,那就會有300M的檔案,若是有20個國家語言,那就會有2000M…。在網路傳輸上都會太過於浪費,當然你可以說團隊有很棒的壓縮技術,但是若是要發行到中國內地,那個網路傳輸的速度就不得不考量。衍伸的問題就會是圖片相關的檔案資源,要存放在哪邊,如何管理…。
當然,若是純粹用文字檔的商用軟體的話,那這種圖片類型的問題就會相對比較少。
接下來的產品,基本上都是面向國際市場,都會需要有多國語言的版本,起碼繁體中文、簡體中文、英文為基本的標準配備,所以在初期開發的時候,其實都需要思考到這個層面,千萬別為了初期省時間,到中後期才要製作多國語言版本,耗費的成本將是無比巨大,絕對不是只有「翻譯」而已,「翻譯」可能還只是最單純的部分。
後來,只要是我經手的專案項目,在專案啟動時,除了上一篇提到的「系統提示訊息」,第二個部分,就是會把多國語版本的規劃考量進去。
那具體上我們該怎麼做?
基本上,分成四個部分,「介面文字、說明文字、訊息文字、圖像文字」
■介面文字
所謂的介面文字,就如同在 《我的專案筆記 #21》搞懂規格書,讓你的團隊再也不用通靈,這篇提到的。在介面上用來引導使用者,並執行操作的各種「文字」及「按鈕」。
這部分要注意的就是「文字的換行」,由於相同意思的文字,在不同語言下需要的空間長度不同,舉例來說,「購物車」的英文是「shopping cart」,長度相對長很多,所以常見做法就是做「縮寫」,或是做成「ICON圖示」來表示,但是未必都能100%解決,這時候就需要從「排版」上下手了,需要思考怎樣的配置,才能避免「文字換行」導致頁面跑版的狀況出現。

■說明文字
最常用在「功能說明」及「常見問題 FAQ」中,下圖為 《IKEA》 的範例。這類型的文字,可能會經常性的追加或是調整,且有時候不只有文字,可能會搭配圖片說明,因此有很高的機率可以透過「後台」來進行編輯,而編輯後的結果,就會儲存在資料庫中,這是為了避免每次調整內容,都必須要進行版本更新。
《延伸閱讀:《我的專案筆記 #19》搞懂前端與後端,成為工程師的神隊友,了解後台是做什麼用的》
■訊息文字
訊息文字就是在上一篇 《我的專案筆記 #25》數位產品開發之前,PM須知道的三件事 (1/3) – 系統提示訊息 提到的「系統提示訊息」。而系統提示訊息又可以分成兩種型態「固定文字」,與「變動文字」。
所謂的固定文字,就像下表(A)一樣,為固定的一串文字,但是很多時候,這種固定文字的形式也不足以使用,有些時候需要帶入文字,例如:帳號、時間、金額…等,如下圖(B),這種時候我們應該怎麼處理?
| SysErrCode | 內容 (PM與工程師共同增加) | 用戶端顯示 (由PM定義) | 系統端紀錄 (由工程師定義) |
| 1001 | 登入帳號不存在 | 您輸入的帳號與密碼不相符。 | login account error. (1001) |
| 1002 | 登入密碼錯誤 | 您輸入的帳號與密碼不相符。 | login password error. (1002) |
| 3001 | 註冊時的IP不合法 | 您所在的地區無法註冊。 | registration failed. (3001) |
| 3002 | 註冊帳號格式不正確 | 您輸入的帳號格式不符。 | registration failed. (3002) |
| 3003 | 註冊密碼格式不正確 | 您輸入的密碼格式不符。 | registration failed. (3003) |
| 3004 | 註冊帳號已存在 | 您輸入的帳號已存在。 | registration failed. (3004) |
| 3005 | token 已失效 | 系統發生異常。(3005) | token failed. (3005) |

其實處理方式只有一個,就是「避免文法干擾,重新進行排版」,什麼意思呢?
親愛的顧客 AAA 您好,您於 2022/3/31 08:25:31 成功購買 XXX 一套,消費金額為 2500元整。
上述這句話,在工程師的眼中,看起來是長這樣的
親愛的顧客 %s 您好,您於 %s 成功購買 %s 一套,消費金額為 %d 元整。
這邊的 %s, %d 都是指帶入的變數,意思就是會依據狀況帶入不同的值,所以不會是固定的一句話,%s, %d 的使用則需要和工程師討論,不同的程式語言、不同工程師的習慣,可能都會有不同的使用方式。
相信睿智的你也有發現,這句話裡面出現三個%s,分別對應的是「顧客名稱、時間、商品名稱」。
如果換成英文的話,可能就會變成「Dear %s, You bought %s for %d at %s.」,%s對應的順序就變成「顧客名稱、商品名稱、時間」,這也就是文字會因為文法,造成順序會不同,於是工程師要花額外的時間去處理。
那如果有更多的語言版本要處理,花的時間就會是倍數增長,而且大幅增加維護成本。
因此,建議的處理方式如下圖,盡可能避免用「一段話的方式」呈現,改成「資訊顯示」的方式,降低「文法的影響」。另外,這種類型的提示訊息是否要納入「系統提示訊息」的表單內統一管理,也需要和工程師討論,盡可能找到一個讓團隊方便維護與調整的方式。

■圖像文字
顧名思義,「圖像文字」就是指不是系統文字,而是由設計師或美術人員製作出來的文字,如下圖的「新手任務」四個字,通常這類型的文字會有比較特殊的需求,像是要吸引人注意,或是和圖像合在一起的文字。若是這類型的文字要做多國語版本,就會需要設計師或美術人員,依據不同語言的需求,獨立繪製不同的版本,但是這類型文字的需求量比較有限,所以就安排時間讓設計師或美術人員去製作就好。
如果產品有大量的圖像文字的需求,多半發生在「各國語言版本的按鈕」上,這個時候就需要和工程師討論,討論什麼呢?其實就是「多國語言包的資源管理」。
如果是APP產品,這些不同語言的「圖像」及「按鈕元件」需要打包在APP的版本上嗎?那這會有兩種考量,一種是全部打包在一起,整個APP容量過大,對於網路基礎建設較差的國家,下載速度過慢就會是一種挑戰;另一種是切換語言時才去載入語言包,但是這就需要考量「語言包」的讀取。
如果是網頁產品,那就是切換語言時才需要去載入需要的「圖像」,這時候還需考慮的是檔案的大小與格式,畢竟瀏覽網頁時,每切換一個頁面就要讀取很久,那會很影響使用的體驗。

但是,很多時候我們都是承接別人的專案,那該怎麼辦?最後不外乎下列幾種作法:
(1) 寫工具:請工程師寫一個工具程式,將程式碼裡面的文字全部抽出,然後將翻譯完的文字再全數填回,這邊要注意的就是上述提到的「帶變數的訊息文字」,然後依據不同的語系,切換成不同的版,最不推薦,但是還蠻常被列入選項。
(2) 多版本:先複製出不同語系的版本,再依據各語系版本逐一置換,這方法在10多年前也是蠻常見的,由於當時的產品版本都會先發布本地版本,之後才會發布其他語系版本,這時候會再依據當地做在地化翻譯。上述的日本遊戲在地化,就是這種模式。這種版本也多半會依據當地需求進行調整,於是切換成不同國家版本也是蠻常用的手法,只是現在普遍都會考慮單一地區就有多國語的需求,逐漸較不使用這方法。還有一個原因就是,越多的版本會有越高的維護成本。
(3) 花時間:就是老實地將產品內的文字逐一抽出置換,並新增「多國語的對照表」,雖然最花時間,但是卻是最釜底抽薪的作法。
初期不弄多國語,未來多語弄死你。
若你在PM這條路上感到迷茫,
或想更清楚了解自己的能力與定位,
歡迎試試這份《PM產品/專案雙軌分析報告》。
它不為了定義你,而是幫助你更看清自己。
歡迎關注:
官網:https://unityprosper.com/
部落格:https://hero-mi.com/
FB:https://www.facebook.com/DigiPRDCoachHeroMi
LINE OA:@hero-mi

《歡迎加我LINE,一起破局未來》
請於下方輸入電子郵件信箱,即可接收最新訊息。
*本站所有文章未經授權,請勿任意利用、引用、轉載,但是歡迎按讚、訂閱、分享。
探索更多來自 AI時代|PM破局未來 的內容
訂閱即可透過電子郵件收到最新文章。
留言