Keyman:为移动键盘开发配置 Unicode 完整字体
Keyman: Configure Unicode-complete fonts for mobile Keyboard Development
我是喀麦隆键盘的维护者(已经在 MSKLC 和 XKB 中,以前在 Keyman 中),我正在为 Android/iOS 测试 Keyman。
我有:
- 开发了带有触摸布局的键盘(Keyman Developer 9)
- 定义了所有字符
- 已将字体上传至 Github
- 为 font 和 OSKfont 定义了这个字体。
- 在 Android/iOS 台设备上测试了键盘。
我的代码的相关部分在这里:
"options" : {
"device" : "any",
"keyboardBaseUri" : "https://github.com/erros84/Cameroon-Keyboard/raw/master/",
"fontBaseUri" : "https://github.com/erros84/Cameroon-Keyboard/raw/master/Fonts/"
},
"keyboard" : {
"id" : "camq_mob_progress",
"name" : "Cameroon QWERTY",
"filename" : "camq_mob_progress-1.0.js",
"version" : "1.0",
"lastModified" : "2017-08-03T21:21:31.154+01:00",
"font" : {
"family" : "Andika Afr",
"size" : "20pt",
"source" : "ANDIKAAFR-R.TTF"
},
"oskFont" : {
"family" : "Andika Afr",
"size" : "20pt",
"source" : "ANDIKAAFR-R.TTF"
},
在 Android 上,键盘按钮按预期显示在 Andika Africa 中,但即使在 Keyman 应用程序内部,文本区域(keymanWeb 和 Android)使用不完整的等宽字体无法正常显示。我认为 Keyman 应用程序可以使用我的自定义字体,至少在某些地方是这样。
我们使用分解的变音符号,以及自 v5 以来 Unicode 中的一些 IPA 特殊字符。一些变音符号,例如这个 ◌᷆ 不会保留在它们的字母上。这是我们最复杂的示例 characters/combinations:ɛ́ɔ̀ə̌ʉ̂ɨ᷅ɄƁŒƐ̩ .
https://github.com/erros84/Cameroon-Keyboard/blob/master/Screenshot.png
我是不是误以为我可以添加字体(至少对于 KM 记事本界面),也许还可以。我知道移动字体已被绝育,因此它们可以最大限度地减少 RAM。我选择 Andika Afr 是因为美观、区域完整性和大小。
如果我不能为此添加特定字体,KM Android 是否安装任何我可以锁定的相对完整(和非等宽)字体?
我对任何 Andika、Charis SIL、Doulos SIL、Arial、Noto、Cambria、Gentium、DejaVu、code2000、Arial、Lucida 都很满意。
响应马克的更新:
好的,我通读了编译错误,解决了几个关键问题。有一个很有趣:Warning: line 0 warning 209F: The touch layout font should be the same as the On Screen Keyboard font and be the same for all platforms.
.js 文件引用了 Andika 和 Andika Afr。搜索后,唯一包含对 "Andika"(不是 Andika Afr)的引用的其他文件是 KVK 文件(不可直接编辑)。奇怪的是,从项目中删除 KVK 并重新测试 Android 键盘将一切设置回 Courier。
似乎 Android 上触摸键盘的编译奇怪地与 KVK 上的字体设置相关联,我不知道如何在 KVK 中重新配置字体(没有代码视图).
fontBaseUri
似乎不正确。应该是指最终字体文件所在的文件夹:
"fontBaseUri" : "https://github.com/erros84/Cameroon-Keyboard/raw/master/Fonts/"
我是喀麦隆键盘的维护者(已经在 MSKLC 和 XKB 中,以前在 Keyman 中),我正在为 Android/iOS 测试 Keyman。
我有:
- 开发了带有触摸布局的键盘(Keyman Developer 9)
- 定义了所有字符
- 已将字体上传至 Github
- 为 font 和 OSKfont 定义了这个字体。
- 在 Android/iOS 台设备上测试了键盘。
我的代码的相关部分在这里:
"options" : {
"device" : "any",
"keyboardBaseUri" : "https://github.com/erros84/Cameroon-Keyboard/raw/master/",
"fontBaseUri" : "https://github.com/erros84/Cameroon-Keyboard/raw/master/Fonts/"
},
"keyboard" : {
"id" : "camq_mob_progress",
"name" : "Cameroon QWERTY",
"filename" : "camq_mob_progress-1.0.js",
"version" : "1.0",
"lastModified" : "2017-08-03T21:21:31.154+01:00",
"font" : {
"family" : "Andika Afr",
"size" : "20pt",
"source" : "ANDIKAAFR-R.TTF"
},
"oskFont" : {
"family" : "Andika Afr",
"size" : "20pt",
"source" : "ANDIKAAFR-R.TTF"
},
在 Android 上,键盘按钮按预期显示在 Andika Africa 中,但即使在 Keyman 应用程序内部,文本区域(keymanWeb 和 Android)使用不完整的等宽字体无法正常显示。我认为 Keyman 应用程序可以使用我的自定义字体,至少在某些地方是这样。
我们使用分解的变音符号,以及自 v5 以来 Unicode 中的一些 IPA 特殊字符。一些变音符号,例如这个 ◌᷆ 不会保留在它们的字母上。这是我们最复杂的示例 characters/combinations:ɛ́ɔ̀ə̌ʉ̂ɨ᷅ɄƁŒƐ̩ .
https://github.com/erros84/Cameroon-Keyboard/blob/master/Screenshot.png
我是不是误以为我可以添加字体(至少对于 KM 记事本界面),也许还可以。我知道移动字体已被绝育,因此它们可以最大限度地减少 RAM。我选择 Andika Afr 是因为美观、区域完整性和大小。
如果我不能为此添加特定字体,KM Android 是否安装任何我可以锁定的相对完整(和非等宽)字体? 我对任何 Andika、Charis SIL、Doulos SIL、Arial、Noto、Cambria、Gentium、DejaVu、code2000、Arial、Lucida 都很满意。
响应马克的更新:
好的,我通读了编译错误,解决了几个关键问题。有一个很有趣:Warning: line 0 warning 209F: The touch layout font should be the same as the On Screen Keyboard font and be the same for all platforms.
.js 文件引用了 Andika 和 Andika Afr。搜索后,唯一包含对 "Andika"(不是 Andika Afr)的引用的其他文件是 KVK 文件(不可直接编辑)。奇怪的是,从项目中删除 KVK 并重新测试 Android 键盘将一切设置回 Courier。
似乎 Android 上触摸键盘的编译奇怪地与 KVK 上的字体设置相关联,我不知道如何在 KVK 中重新配置字体(没有代码视图).
fontBaseUri
似乎不正确。应该是指最终字体文件所在的文件夹:
"fontBaseUri" : "https://github.com/erros84/Cameroon-Keyboard/raw/master/Fonts/"