kuroshiro | 您所在的位置:网站首页 › 汉字转假名工具 › kuroshiro |
kuroshiro是一款十分方便使用的日文转换注音工具,主要针对日文文本,进行到平假名、片假名及罗马字的转换,并支持注音假名、送假名 (旁注音)等注音模式。 其他说明语言:English, 日本語, 简体中文, 繁體中文, Esperanto。 演示你可以在这里查看在线演示。 特性 日文文本 => 平假名、片假名、罗马字 支持注音假名和送假名 🆕支持多种语素解析器 🆕支持多种罗马字体系 实用日语工具 1.x版本的重大变化 从注音逻辑中分离语素解析器部分,使得我们可以使用不同的语素解析器(预定义的或自定义的) 拥抱ES8/ES2017以使用async/await方法 使用ES6 Module取代CommonJS 解析器插件在开始工作之前,请先确认各插件的环境兼容性 解析器 Node.js支持 浏览器支持 仓库 开发者 Kuromoji ✓ ✓ kuroshiro-analyzer-kuromoji Hexen Qi Mecab ✓ ✗ kuroshiro-analyzer-mecab Hexen Qi Yahoo Web API ✓ ✗ kuroshiro-analyzer-yahoo-webapi Hexen Qi 如何使用 Node.js (或使用Webpack等打包工具时)首先使用npm包管理器进行安装: $ npm install kuroshiro加载kuroshiro库: 同时支持ES6 Module import 和 CommonJS require import Kuroshiro from "kuroshiro";实例化: const kuroshiro = new Kuroshiro();使用一个解析器实例来初始化kuroshiro (请参考API说明): // 在这个示例中,首先npm install并import导入kuromoji解析器 import KuromojiAnalyzer from "kuroshiro-analyzer-kuromoji"; // ... // 初始化 // 这里使用了async/await, 你同样也可以使用Promise await kuroshiro.init(new KuromojiAnalyzer());进行转换操作: const result = await kuroshiro.convert("感じ取れたら手を繋ごう、重なるのは人生のライン and レミリア最高!", { to: "hiragana" }); 浏览器将dist/kuroshiro.min.js加入到你的工程 (你需要先后执行npm install和npm run build,以把它构建出来),并在HTML中加入: 在这个示例中, 你还需要引入kuroshiro-analyzer-kuromoji.min.js。具体获取方法请参考kuroshiro-analyzer-kuromoji 实例化: var kuroshiro = new Kuroshiro();使用一个解析器实例来初始化kuroshiro,然后进行转换操作: kuroshiro.init(new KuromojiAnalyzer({ dictPath: "url/to/dictFiles" })) .then(function () { return kuroshiro.convert("感じ取れたら手を繋ごう、重なるのは人生のライン and レミリア最高!", { to: "hiragana" }); }) .then(function(result){ console.log(result); }) API说明 构造器示例 const kuroshiro = new Kuroshiro(); 实例方法 init(analyzer)使用一个解析器实例来初始化kuroshiro。你需要首先导入并初始化一个解析器。你可以使用上面提到的已实现的解析器插件。关于解析器的初始化方法请参照相应解析器的文档说明。 参数 analyzer - 解析器实例。示例 await kuroshiro.init(new KuromojiAnalyzer()); 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时生效。有关这一参数的更多信息, 请见 罗马字体系 示例 // normal (标准模式) kuroshiro.convert("感じ取れたら手を繋ごう、重なるのは人生のライン and レミリア最高!", {mode:"okurigana", to:"hiragana"}); // 结果:かんじとれたらてをつなごう、かさなるのはじんせいのライン and レミリアさいこう! // spaced (空格分组) kuroshiro.convert("感じ取れたら手を繋ごう、重なるのは人生のライン and レミリア最高!", {mode:"okurigana", to:"hiragana"}); // 结果:かんじとれ たら て を つなご う 、 かさなる の は じんせい の ライン and レミ リア さいこう ! // okurigana (送假名) kuroshiro.convert("感じ取れたら手を繋ごう、重なるのは人生のライン and レミリア最高!", {mode:"okurigana", to:"hiragana"}); // 结果: 感(かん)じ取(と)れたら手(て)を繋(つな)ごう、重(かさ)なるのは人生(じんせい)のライン and レミリア最高(さいこう)! // furigana (注音假名) kuroshiro.convert("感じ取れたら手を繋ごう、重なるのは人生のライン and レミリア最高!", {mode:"furigana", to:"hiragana"}); // 结果: 感(かん)じ取(と)れたら手(て)を繋(つな)ごう、重(かさ)なるのは人生(じんせい)のライン and レミリア最高(さいこう)! 实用工具示例 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”)。 罗马字体系kuroshiro支持三种罗马字体系。 nippon: 日本式罗马字。参照 ISO 3602 Strict。 passport: 护照式罗马字。 参照日本外务省发布的 日文罗马字对照表。 hepburn: 平文罗马字。参照 BS 4812 : 1972。 想快速了解这些罗马字体系的不同,可参考这个实用的网页。 罗马字转换须知完全自动化进行注音假名到罗马字的直接转换是不可能的,这是因为一般的注音假名都缺乏正确的发音信息,可以参考 なぜ フリガナでは ダメなのか?。 因此kuroshiro在进行直接的注音假名->罗马字转换(使用任何罗马字体系)时,不会处理长音。(但长音符会被处理) 例如,当进行假名”こうし”到罗马字的转换时,对于nippon, passport, hepburn三种罗马字体系,你会分别得到”kousi”, “koushi”, “koushi”这几个结果 汉字->罗马字的转换无论使用注音假名模式与否都 不受 此逻辑影响。 贡献请查阅文档 CONTRIBUTING. 灵感源 kuromoji wanakana 版权说明MIT |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |