@tdh-keyboard/pinyin
v1.0.10
Published
中文虚拟键盘组件库拼音输入引擎
Maintainers
Readme
@tdh-keyboard/pinyin
@tdh-keyboard/pinyin 提供基于 RIME WASM 的拼音输入引擎实现,可直接接入 @tdh-keyboard/vue、@tdh-keyboard/react 和 @tdh-keyboard/native。
安装
npm install @tdh-keyboard/pinyin导出内容
RimePinyinEngine:基于 RIME WASM 的拼音引擎实现PinyinEngine:通用拼音引擎接口类型PinyinState:拼音候选状态类型
基本用法
import { RimePinyinEngine } from '@tdh-keyboard/pinyin'
const engine = new RimePinyinEngine({
wasmDir: '/rime',
simplified: true,
})
await engine.initialize()
const state = await engine.processInput('nihao')
console.log(state?.candidates)
await engine.pickCandidate(0)
await engine.clearInput()
await engine.destroy()与键盘组件配合使用
import { registerPinyinEngine } from '@tdh-keyboard/vue'
import { RimePinyinEngine } from '@tdh-keyboard/pinyin'
registerPinyinEngine(new RimePinyinEngine({
wasmDir: '/rime',
}))资源文件部署
发布时需要同时提供 data/ 目录中的 RIME 资源文件,并保证 wasmDir 指向这些静态资源所在目录。
默认会加载以下文件:
rime-api.wasmdefault.yamlluna_pinyin.schema.yamlluna_pinyin.table.binluna_pinyin.prism.binluna_pinyin.reverse.bin
选项说明
RimePinyinEngine 构造参数支持:
wasmDir:rime-api.js、rime-api.wasm和数据文件的访问路径前缀dataFiles:自定义需要预加载的数据文件列表simplified:是否默认启用简体中文输出,默认true
实例方法
initialize():初始化引擎并加载 RIME 资源processInput(fullPinyin):处理完整拼音串,返回候选状态pickCandidate(index):按索引选择候选词clearInput():清除当前预编辑输入setSimplified(simplified):切换简体 / 繁体输出destroy():销毁引擎并释放资源
