Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
意外とフォントが大事だった話 / Font Issues on Internationaliz...
Search
fumi
September 08, 2024
Programming
0
160
意外とフォントが大事だった話 / Font Issues on Internationalization
fumi
September 08, 2024
Tweet
Share
Other Decks in Programming
See All in Programming
チームで開発し事業を加速するための"良い"設計の考え方 @ サポーターズCoLab 2025-07-08
agatan
1
430
AI時代の『改訂新版 良いコード/悪いコードで学ぶ設計入門』 / ai-good-code-bad-code
minodriven
19
7.5k
生成AI時代のコンポーネントライブラリの作り方
touyou
1
230
#QiitaBash MCPのセキュリティ
ryosukedtomita
1
1.4k
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
730
Is Xcode slowly dying out in 2025?
uetyo
1
280
10 Costly Database Performance Mistakes (And How To Fix Them)
andyatkinson
0
400
PipeCDのプラグイン化で目指すところ
warashi
1
280
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
2
520
#kanrk08 / 公開版 PicoRubyとマイコンでの自作トレーニング計測装置を用いたワークアウトの理想と現実
bash0c7
1
780
MDN Web Docs に日本語翻訳でコントリビュートしたくなる
ohmori_yusuke
1
130
Google Agent Development Kit でLINE Botを作ってみた
ymd65536
2
250
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Become a Pro
speakerdeck
PRO
29
5.4k
What's in a price? How to price your products and services
michaelherold
246
12k
Designing for humans not robots
tammielis
253
25k
Rails Girls Zürich Keynote
gr2m
95
14k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
It's Worth the Effort
3n
185
28k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Transcript
意外とフォントが大事だった話 @Global Service Meetup 2024-09-05 株式会社スタディスト 高橋史裕
Teachme Biz多言語対応の略歴 • 2019年2月(たかはしjoin時点) ◦ UI は日本語、英語、タイ語に対応 • 2019年4月 ◦
タイ語でのマニュアル検索に対応 • 2022年1月 ◦ UI対応言語にベトナム語を追加 • 2023年3月 ◦ 自動翻訳機能
フォントが大事だった話 - タイ語
フォントが大事だった話 - タイ語 Before (Tahoma) After (Sarabun)
フォントが大事だった話 - タイ語 Before (Tahoma) After (Sarabun) • Beforeのほうは、現地の人からすると traditional
な印象を受ける • 日本語だと「コースをクリックしてください」みたいなかんじ?
フォントが大事だった話 - ベトナム語
フォントが大事だった話 - ベトナム語 Before (Hiragino) After (Arial)
フォントが大事だった話 - ベトナム語 Before (Hiragino) After (Arial) • Beforeのほうは、声調記号を正しく表示できていない ◦
声調記号 = 母音(â)のイントネーションを指示する記号 ◦ 12の母音と6つの声調があるらしい
フォントが大事だった話 - ミャンマー語
フォントが大事だった話 - ミャンマー語 Before (Zawgyi-One) After (Noto Sans Myanmar)
フォントが大事だった話 - ミャンマー語 Before (Zawgyi-One) After (Noto Sans Myanmar) •
同じ文章か?っていうレベルで違う • どうして (・ω・`)
ミャンマー語フォント問題 歴史的経緯 (1/2) • ミャンマー語は文字体系が複雑で Unicode 対応が遅れた ◦ ある文字が前後の文字に応じて形を変える ◦
文字が発音される順番に並ばない • その間に Zawgyi という独自フォントが生まれ発展した ◦ フォントではあるものの独自の文字割当があり、 それ自体が文字コードのようなものになっている • 国内では Zawgyi が事実上の標準になるまで普及した • が、2019年に国が正式に Unicode への切り替えを宣言
ミャンマー語フォント問題 歴史的経緯 (2/2) • 2つのフォントには互換性がなく、旧来の Zawgyi テキストで書かれたサイ トを Unicode フォントで表示すると文字化けして見える
• Zawgyi テキストはかなり普及しているため、Unicode フォントだとまともに 表示されないサイトも多い ◦ PCショップが「善意で」Unicodeフォントをアンインストールすることもあ る • 逆に Google 翻訳は Unicode テキストを返すので Zawgyi フォントで表示 すると文字化けして見える
フォントが大事だった話 - ミャンマー語(再掲) Before (Zawgyi-One) After (Noto Sans Myanmar) •
同じ文章か?っていうレベルで違う • どうして (・ω・`)
ミャンマー語フォント問題 参考文献 ZawgyiとUnicode: 普及しすぎたミャンマーの オレオレ文字コードと国際化 Hyalinios https://techbookfest.org/product/fCgCckmBRH 8qb5BE22LVW9?productVariantID=sArJPvFs QPtyqCjgSj3wzR
(わき道)Webフォントってどうなんでしょうか? • 前述の問題はすべて「font-family の変更」と「ユーザーへのフォントインストール案 内」の合わせ技で対応した • font-family の指定は推奨フォントの提案に過ぎず、結局はデバイスフォントで表示 される •
Webフォントであればすべての端末に同じ見た目を提供できる(はず) • 一般的に言われるデメリット ◦ ファイルサイズ起因の問題 ◦ ライセンスの問題 ◦ …… • 導入の知見あれば伺いたい m(_ _)m
〆
〆 言語・文化の壁を越え、より良いコミュニケーションを目指すため 「伝える」ための細部にこだわり、より良いプロダクトを作ろう • Webサービスを多言語に展開する際、ただ翻訳するだけでは不十分かも • 適切なフォントを選ぶことは印象や情報の正確な伝達に不可欠 • 「伝えることを、もっと簡単に。」← 弊社のコーポレートミッション
ありがとうございました
話者紹介 開発本部 > TMBエンジニアリング部 > CREグループ > たかはし • 特技・趣味
◦ ペンギン ◦ 櫻坂46/欅坂46 ◦ 歩くこと ◦ 575を見つけること • さいきんのたかはし ◦ 仕事 ▪ n-gram検索対応 ▪ ベクトル検索対応 ◦ プライベート ▪ 滋賀県にいってきました