ゼロから実装する縦書きTextViewとその周辺技術
発表者: 六々 (@496_)
View + InputConnection + Editable + Bitmapを使って縦書きのTextViewを実装した話をします。
TextVIewやStringを使わなくても文字入力ができるViewを作ることが可能です。
iOS / UWP / Windows / macOS / Ubuntuなどの他プラットフォームでの縦書きTextViewの実装経験も交えて、Androidでの縦書きTextView実装の概要と注意点について話します。
また周辺技術としてUnicodeの話、OpenTypeの仕様を中心としたフォントの話もあります。
# 内容
- TextViewとは何者か
- 文字列入力系としての側面
- フォント描画系としての側面
- IMEとは何か
- 文字入力の仕組み
- IMEとアプリの関係性
- InputConnectionの罠
- StringとEditableについて
- StringとAndroid Studioの関係 (閑話)
- UnicodeとフォントからBitmapが作られるまで
- テキストレンダリングエンジン実装の概要
- フォントの役割とOpenTypeの仕様
- OpenTypeや文字列描画系から見たUnicode Emoji事情 (閑話)
- 昨今のAndroid内のフォント事情
- Variable Fontの登場
- 縦書きTextView実装で気をつけるべきこと
受講対象者
文字についてUnicode / IME / フォントと言われて何となくイメージが浮かぶ方を対象にしています。
特に: TextViewの独自実装に興味のある方 / 文字入力システムに興味のある方 / 文字描画システムに興味のある方 / 縦書きに興味のある方 に聞いてもらえると嬉しいです。