Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

pinyin

Package Overview
Dependencies
Maintainers
2
Versions
49
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

pinyin

汉语拼音转换工具。

  • 2.4.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
12K
increased by18.07%
Maintainers
2
Weekly downloads
 
Created
Source

汉字拼音转换工具。


NPM version spm package Build Status Coverage Status

转换中文字符为拼音。可以用于汉字注音、排序、检索。

注:这个版本同时支持在 Node 和 Web 浏览器环境运行, 之前的 hotoo/node-pinyin 仓库即将下线。

Python 版请关注 mozillazg/python-pinyin


特性

  • 根据词组智能匹配最正确的拼音。
  • 支持多音字。
  • 简单的繁体支持。
  • 支持多种不同拼音风格。

安装

via npm:

npm install pinyin

via spm3:

spm install pinyin

用法

开发者:

var pinyin = require("pinyin");

console.log(pinyin("中心"));    // [ [ 'zhōng' ], [ 'xīn' ] ]
console.log(pinyin("中心", {
  heteronym: true               // 启用多音字模式
}));                            // [ [ 'zhōng', 'zhòng' ], [ 'xīn' ] ]
console.log(pinyin("中心", {
  style: pinyin.STYLE_INITIALS, // 设置拼音风格
  heteronym: true
}));                            // [ [ 'zh' ], [ 'x' ] ]

命令行:

$ pinyin 中心
zhōng xīn
$ pinyin -h

API

方法 <Array> pinyin(words[, options])

将传入的中文字符串(words)转换成拼音符号串。

options 是可选的,可以设定拼音风格,或打开多音字选项。

返回二维数组,第一维每个数组项位置对应每个中文字符串位置。 第二维是各个汉字的读音列表,多音字会有多个拼音项。

参数 <Boolean> options.heteronym

是否启用多音字模式,默认关闭。

关闭多音字模式时,返回每个汉字第一个匹配的拼音。

启用多音字模式时,返回多音字的所有拼音列表。

参数 <Object> options.style

指定拼音 风格。可以通过以下几种 STYLE_ 开头的静态属性进行指定。

静态属性 .STYLE_NORMAL

普通风格,即不带音标。

如:pin yin

静态属性 .STYLE_TONE

声调风格,拼音声调在韵母第一个字母上。

注:这是默认的风格。

如:pīn yīn

静态属性 .STYLE_TONE2

声调风格2,即拼音声调在各个拼音之后,用数字 [0-4] 进行表示。

如:pin1 yin1

静态属性 .STYLE_INITIALS

声母风格,只返回各个拼音的声母部分。

如:中国 的拼音 zh g

例外,对于只有韵母的汉字(如『爱、啊』等),会先转成不带音标的普通风格。

静态属性 .STYLE_FIRST_LETTER

首字母风格,只返回拼音的首字母部分。

如:p y

Test

npm test

Q&A

node 版和 web 版有什么异同?

pinyin 目前可以同时运行在 Node 服务器端和 Web 浏览器端。 API 和使用方式完成一致。

但 Web 版较 Node 版稍简单,拼音库只有常用字部分,没有使用分词算法, 并且考虑了网络传输对词库进行了压缩处理。

由于分词和繁体中文的特性,部分情况下的结果也不尽相同。

特性Web 版Node 版
拼音库常用字库。压缩、合并完整字库。不压缩、合并
分词没有分词使用分词算法,多音字拼音更准确。
拼音频度排序有根据拼音使用频度优先级排序。同 Web 版。
繁体中文没有繁体中文支持。有简单的繁简汉字转换。

由于这些区别,测试不同运行环境的用例也不尽相同。

为什么不使用更好的繁简转换?

对于拼音来说,把繁简汉字做简单的映射并转换成拼音是合理的。 而使用类似 OpenCC cconv 这样的转换库,虽然转换结果更 符合本地化语境,但是对于汉字变化后的拼音来说,已经不是繁体原字的拼音了。

参考

Keywords

FAQs

Package last updated on 13 May 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc