kuroshiro是一款十分方便使用的日文转换注音工具,主要针对日文文本,进行到平假名、片假名及罗马字的转换,并支持注音假名、送假名 (旁注音)等注音模式。
一、演示
你可以在这里查看我的演示。
二、使用
Web
导入kuroshiro.min.js
和kuroshiro-analyzer-kuromoji.min.js
,其中kuroshiro.min.js
需要使用1.1.0
版本。
可以直接通过CDN引入:
1 | <script src="https://cdn.jsdelivr.net/npm/kuroshiro@1.1.0/dist/kuroshiro.min.js"></script> |
1 | // 初始化kuroshiro |
字典文件
下载kuromoji项目中dict
下的gz文件(共12个)
Node
1 | npm i kuroshiro kuroshiro-analyzer-kuromoji |
1 | import _Kuroshiro from 'kuroshiro' |
三、API说明
此处援引kuroshiro官网API说明
convert(str, [options])
转换指定的字符串到指定的音节文字(可在选项中配置注音模式等设置)。
参数
str
- 将被转换的字符串。options
- 可选 转换选项,见下表。
选项 | 类型 | 默认值 | 描述 |
---|---|---|---|
to | String | ‘hiragana’ | 目标音节文字 hiragana (平假名), katakana (片假名), romaji (罗马字) |
mode | String | ‘normal’ | 转换模式 normal (标准模式), spaced (空格分组), okurigana (送假名), furigana (注音假名) |
romajiSystem* | String | “hepburn” | 罗马字体系 nippon (日本式), passport (护照式), hepburn (平文式) |
delimiter_start | String | ’(‘ | 分隔符 (起始) |
delimiter_end | String | ’)’ | 分隔符 (结束) |
*: romajiSystem
参数仅当to
参数设置为romaji
时生效。有关这一参数的更多信息, 请见 罗马字体系
示例
1 | // normal (标准模式) |
结果:かんじとれたらてをつなごう、かさなるのはじんせいのライン and レミリアさいこう!
1 | // spaced (空格分组) |
结果:かんじとれ たら て を つなご う 、 かさなる の は じんせい の ライン and レミ リア さいこう !
1 | // okurigana (送假名) |
结果:感(かん)じ取(と)れたら手(て)を繋(つな)ごう、重(かさ)なるのは人生(じんせい)のライン and レミリア最高(さいこう)!
1 | // furigana (注音假名) |
结果:感じ取れたら手を繋ごう、重なるのは人生のライン and レミリア最高!
实用工具
示例
1 | const result = Kuroshiro.Util.isHiragana("あ")); |
isHiragana(char)
判断输入字符是否是平假名。
isKatakana(char)
判断输入字符是否是片假名。
isKana(char)
判断输入字符是否是假名。
isKanji(char)
判断输入字符是否是日文汉字。
isJapanese(char)
判断输入字符是否是日文。
hasHiragana(str)
检查输入字符串中是否含有平假名。
hasKatakana(str)
检查输入字符串中是否含有片假名。
hasKana(str)
检查输入字符串中是否含有假名。
hasKanji(str)
检查输入字符串中是否含有日文汉字。
hasJapanese(str)
检查输入字符串中是否含有日文。
kanaToHiragna(str)
转换输入假名字符串至平假名。
kanaToKatakana(str)
转换输入假名字符串至片假名。
kanaToRomaji(str, system)
转换输入假名字符串至罗马字。参数system
可选值为"nippon"
, "passport"
, "hepburn"
(默认值: “hepburn”)。