• Stars
    star
    2,340
  • Rank 19,661 (Top 0.4 %)
  • Language
    TypeScript
  • License
    MIT License
  • Created over 4 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

🇨🇳 功能全面的汉字工具库 (拼音 笔画 偏旁 成语 语音 可视化等) (Chinese character util)

test test test

stars forks version downloads jsdelivr

author license Size TopLang issue Dependent

🚀 功能全面、多端支持的汉字拼音笔画 js 库

English | 在线试用/文档 | 更新日志 | 反馈错误/缺漏 | Gitee | QQ Group: 958278438 | 留言板

应用例子

开始文档之前,先通过一些应用案例看看 cnchar 能够做些什么

汉字打字游戏 | 打字弹钢琴 | 成语接龙 | 通讯录排序 | 取名字 | 输入法 | 歇后语 | 语音识别与合成 | 简繁体转换

赞赏

开源维护不易。如果该项目对您有帮助且您有余力,可以微信扫码请作者喝一杯可乐或咖啡,非常感谢!

如捐赠,请备注留一下github个人地址,后续会展示在此页中。

赞赏记录

注:最新统计时间为 2023/06/13,总金额=133元

昵称 金额(元) 时间 留言 渠道 作者备注
69247 1 2023/05/25 学生党给点微薄的赞助 微信赞赏码
江皓波 100 2023/05/05 draw对中学生学笔顺很有用,希望笔画能添加方向箭头。加油! 微信赞赏码
普通的disco 20 2023/04/01 大佬开源维护不易,加油!希望能有部首查字的功能~ 微信赞赏码 v3.2.4中已增加该功能
mango 5 2023/02/10 - 微信赞赏码
阿炜 5 2022/11/11 阿炜ky2700 微信赞赏码
slako 1 2022/10/20 不明觉厉 微信赞赏码
王三金 1 2022/10/16 - 微信赞赏码

前言

感谢同学们对于 cnchar 的支持,由于 cnchar 词库来源于网络,虽然经过了本人的修改和扩充,但是还是难免有错误与缺漏之处,希望大家可以将使用中发现的错误与缺漏之处 反馈 给我(或自行修改提交,经过审查无误过后会合到 cnchar 中)

我要反馈错误或缺漏

0. 快速使用

使用 npm 安装:

npm i cnchar
import cnchar from 'cnchar';
'汉字'.spell();
'汉字'.stroke();

使用 script 标签使用:

如果 jsdelivr 挂了可以使用 unpkg (https://unpkg.com/cnchar/cnchar.min.js)

<script src="https://fastly.jsdelivr.net/npm/cnchar/cnchar.min.js"></script>
<script>
    '汉字'.spell();
    '汉字'.stroke();
</script>

1.功能

  1. 获取 汉字拼音 ,支持首字母、大小写、数组分割、备选 多音字 等功能
  2. 支持 多音词拼音音调
  3. 获取汉字 笔画数笔画顺序 、笔画详细名称
  4. 支持可视化 绘制汉字笔画 、多种绘制模式可选
  5. 支持 语音合成语音识别
  6. 支持 汉字组词汉字解释
  7. 支持 简体字繁体字火星文 互转
  8. 支持 查找 某拼音的所有 汉字 ,繁体字,多音字
  9. 支持 查找 指定笔画数的所有 汉字 ,繁体字
  10. 支持 根据笔画顺序查询 汉字
  11. 支持 查询拼音的信息,包含声母、韵母、音调、音调位置的等
  12. 支持 繁体字 拼音、笔画数及以上所有功能,实现和简体字一样的功能
  13. 支持 成语 查询功能,可以按照汉字、拼音(声调)、笔画数查询成语
  14. 支持 歇后语 查询功能,支持模糊查询
  15. 支持 偏旁部首 查询功能
  16. 支持 随机生成 拼音、汉字、词语、成语、歇后语、中文名字
  17. 支持 汉字编码查询汉字信息查询
  18. 支持 拼音输入法五笔输入法、支持联想输入
  19. 支持 自定义插件,独立简单的接入方式,完整使用cnchar所有功能
  20. 支持 自定义 拼音笔画等数据,使用更灵活
  21. 对于部分大词典,支持 离线使用自定义部署
  22. 提供汉字工具方法,方便开发者更便捷高效地 操作拼音和汉字
  23. 体积小,min 版本仅 75 kb,zip 版本 50 kb (含有大量汉字拼音字典)
  24. 多端可用,可用于 浏览器、nodejs、小程序/小游戏、ReactNative/Weex/Uniapp/Electron、webpack...,支持所有 js 能运行的环境
  25. typescript,主库及所有插件库均使用typescript开发
  26. 丰富的配置,按功能拆分成插件,按需取用
  27. 支持 IE9及以上版本

2.功能及插件概览

考虑到不同的需求,cnchar 的功能被拆分到以下多个插件库中,方便开发者按需取用:

名称 描述 功能 支持版本 node支持 小程序
cnchar 主 js 库,其他三个库依赖于这个库 含有简体字拼音、多音字、音调、笔画数等功能 --
cnchar-poly 多音词库 含有识别多音词功能 --
cnchar-order 笔画顺序库 含有识别笔画顺序、笔画名称、笔画形状等功能 --
cnchar-trad 繁体字库 支持繁体、火星、简体互转,支持繁体拼音笔画多音字全功能 --
cnchar-draw 绘制笔画库 支持可视化绘制汉字,该库可脱离cnchar使用,该库仅在浏览器环境下可用 2.1+ 部分
cnchar-idiom 成语库 支持成语查询等功能 2.2+
cnchar-xhy 歇后语库 支持歇后语查询等功能 2.2+
cnchar-radical 偏旁部首库 支持查询汉字偏旁部首 2.2.5+
cnchar-words 汉字组词库 支持根据单个或多个汉字查询词组 3.1.0+
cnchar-explain 汉字解释库 支持查询汉字含义 3.1.0+
cnchar-voice 语音识别和语音合成 支持对中文进行发音与合成 3.1.0+ 部分
cnchar-data 离线词典库 用以支持部分插件库的离线使用及自定义部署 3.1.0+
cnchar-random 随机库 随机生成拼音、汉字、词语、成语、歇后语 3.2.0+
cnchar-input 输入法支持 支持拼音和五笔输入法结果 3.2.0+
cnchar-code 汉字编码库 汉字编码查询 3.2.0+
cnchar-info 汉字信息查询 用于查询汉字信息 3.2.0+
cnchar-name 中文名信息 用于随机生成名字等功能 3.2.0+

详细API文档从v3.2.4起不在该readme中维护,前往 在线文档

3.安装

3.1 使用 npm 安装

安装基础库:

npm i cnchar

安装附加功能库:

npm i cnchar-poly cnchar-order cnchar-trad cnchar-draw cnchar-idiom cnchar-xhy cnchar-radical cnchar-words cnchar-explain cnchar-voice cnchar-random cnchar-code cnchar-input cnchar-info cnchar-name

当然您也可以按需安装其中的几个,插件库也都可以脱离cnchar独立安装使用,不过部分仓库功能强依赖于cnchar, 如 cnchar-poly cnchar-order cnchar-trad

或者您可以通过安装cnchar-all来使用完整功能,这个库引用了上面的所有插件库

npm i cnchar-all

3.2 cdn 引入

如果 jsdelivr 挂了可以使用 unpkg (https://unpkg.com/cnchar/cnchar.min.js)

<script src="https://fastly.jsdelivr.net/npm/cnchar/cnchar.min.js"></script>
<script src="https://fastly.jsdelivr.net/npm/cnchar-poly/cnchar.poly.min.js"></script>
<script src="https://fastly.jsdelivr.net/npm/cnchar-order/cnchar.order.min.js"></script>
<script src="https://fastly.jsdelivr.net/npm/cnchar-trad/cnchar.trad.min.js"></script>
<script src="https://fastly.jsdelivr.net/npm/cnchar-draw/cnchar.draw.min.js"></script>
<script src="https://fastly.jsdelivr.net/npm/cnchar-idiom/cnchar.idiom.min.js"></script>
<script src="https://fastly.jsdelivr.net/npm/cnchar-xhy/cnchar.xhy.min.js"></script>
<script src="https://fastly.jsdelivr.net/npm/cnchar-radical/cnchar.radical.min.js"></script>
<script src="https://fastly.jsdelivr.net/npm/cnchar-words/cnchar.words.min.js"></script>
<script src="https://fastly.jsdelivr.net/npm/cnchar-explain/cnchar.explain.min.js"></script>
<script src="https://fastly.jsdelivr.net/npm/cnchar-voice/cnchar.voice.min.js"></script>
<script src="https://fastly.jsdelivr.net/npm/cnchar-random/cnchar.random.min.js"></script>
<script src="https://fastly.jsdelivr.net/npm/cnchar-code/cnchar.code.min.js"></script>
<script src="https://fastly.jsdelivr.net/npm/cnchar-input/cnchar.input.min.js"></script>
<script src="https://fastly.jsdelivr.net/npm/cnchar-info/cnchar.info.min.js"></script>
<script src="https://fastly.jsdelivr.net/npm/cnchar-name/cnchar.name.min.js"></script>

或使用以下cdn,包含了以上所有插件库

<script src="https://fastly.jsdelivr.net/npm/cnchar-all/cnchar.all.min.js"></script>

4.使用

4.1 webpack浏览器环境(有window对象)

npm 安装好几个库之后:

// 请保证最先引入 cnchar 基础库,其他几个库顺序无所谓
import cnchar from 'cnchar';
import 'cnchar-poly';
// ... 其他插件请参考第二章 2. 功能及插件概览
// 插件请按需取用

console.log('汉字'.spell()); // prototype 方式调用
console.log(cnchar.spell('汉字')); // cnchar api 调用

浏览器环境下会在 window 对象上定义 cnchar 对象

4.2 nodejs 等非浏览器环境

非浏览器环境下需要使用 cnchar.use() 方法加载功能库:

// 请保证最先引入 cnchar 基础库,其他几个库顺序无所谓
var cnchar = require('cnchar');
var poly = require('cnchar-poly');
// ... 其他插件请参考第二章 2. 功能及插件概览
// 插件请按需取用
// 注:cnchar-draw,cnchar-voice 在非浏览器环境下不可使用
cnchar.use(poly);

console.log('汉字'.spell()); // prototype 方式调用
console.log(cnchar.spell('汉字')); // cnchar api 调用

其他使用方式与浏览器环境一致

4.3 原生浏览器环境

原生浏览器环境就需要使用 script 标签引入 js 文件:

<script src="https://fastly.jsdelivr.net/npm/cnchar/cnchar.min.js"></script>
<script src="https://fastly.jsdelivr.net/npm/cnchar-poly/cnchar.poly.min.js"></script>
<!--... 其他插件请参考第二章 2. 功能及插件概览-->
<script>
    console.log('汉字'.spell()); // prototype 方式调用
    console.log(cnchar.spell('汉字')); // cnchar api 调用
</script>

致谢

cnchar-draw 库功能基于 hanzi-writer, 特此表示感谢!

Contributors

More Repositories

1

disable-devtool

Disable web developer tools from the f12 button, right-click and browser menu
TypeScript
1,690
star
2

jsbox

JS online runtime sandbox (JS在线运行环境,在线IDE)
JavaScript
58
star
3

type

汉字打字游戏
JavaScript
52
star
4

dingdong-node

叮咚买菜nodejs自动下单脚本,支持邮件强通知和定时任务,支持捡漏和高峰模式
JavaScript
45
star
5

piano

Play the piano with type (钢琴打字游戏)
JavaScript
31
star
6

logger

Web logger based on indexedDB and WebWorker
TypeScript
26
star
7

salary

工资计算器(2022年最新计税规则)
TypeScript
25
star
8

spark-node

讯飞星火认知大模型 Nodejs SDK
TypeScript
22
star
9

mac

 Build Amazing macOS in your browser
TypeScript
20
star
10

mp-mixin

微信小程序 mixin & 全局store 方案
TypeScript
15
star
11

qrcode

🚀 Powerful qrcode js lib
TypeScript
14
star
12

tc-event

Powerful, easy-to-use eventbus
TypeScript
14
star
13

star-each-other

Leave your repository in issue and we star each other
14
star
14

easy-icon

A simple and easy to use web font icon js library
CSS
9
star
15

sener

Easy-to-use and highly scalable nodejs Web Framework
TypeScript
9
star
16

tc-editor

Code Editor JavaScript Library
JavaScript
8
star
17

comment

Commont component without any account or config, support Emoji and Markdown.
JavaScript
8
star
18

wx-minigame-ts

typescript + webpack 开发微信小游戏模板
JavaScript
8
star
19

webos

Webos terminal Based on HTML5 FileSystem and Alins
TypeScript
8
star
20

vite-vue3-ts-eslint

vite + vue3.2 + ts + eslint demo, script setup
Vue
7
star
21

theajack

7
star
22

bombbattle

大作战纯前端小游戏
JavaScript
7
star
23

laya-game

基于layabox开发的小游戏
JavaScript
7
star
24

jet

Jet--前端轻量级渐进式MVVM框架[便于使用 易于理解 双向绑定 数据驱动]
JavaScript
7
star
25

count-code-line

Count lines and characters for your project
JavaScript
7
star
26

cross-window-message

🚀 Elegant cross-window communication and global page management solution
TypeScript
7
star
27

canvas-render-html

Render HTML code with canvas
TypeScript
6
star
28

keyboard

Nothing But A Funny Keyboard
TypeScript
6
star
29

vuepress-plugin-tc-comment

Support tc-comment in Vuepress
JavaScript
6
star
30

easy-dom

Easy-Dom js library for convenient operation of dom
TypeScript
5
star
31

ts-demo

JavaScript
5
star
32

util

常用的工具方法
TypeScript
5
star
33

json-db

JavaScript
4
star
34

particle-drawer

Draw text or pictures with particles.
TypeScript
4
star
35

vue-i

vue implement
JavaScript
4
star
36

log-progress

A simple, flexible, and highly configurable progress bar
JavaScript
4
star
37

jetee

轻量级的渐进式 Web MVVM框架
JavaScript
4
star
38

pure-v

purev.js: A lightweight, extensible, pure js validation plugin
JavaScript
4
star
39

qr-camera

Web camera and QR code scanner
JavaScript
4
star
40

ebuild-cli

Build webpack, babel, eslint, less, commitlint, typescript, vue, react and other development environments
JavaScript
4
star
41

theajack.github.io

About personal website
JavaScript
4
star
42

jetterjs

js lib for form operate
JavaScript
4
star
43

tacl-ui

A set of simple ui components for taost, confirm, loading, alert, drag
4
star
44

tcon

基于 try catch 捕获所有异常的移动端调试工具
JavaScript
4
star
45

copy

Easy to use and compact JS library for copying text
JavaScript
4
star
46

ts-miniapp

Wechat miniapp demo with typescript (mp-mixin dev env)
TypeScript
4
star
47

easy-test-lib

A simple and easy-to-use testing framework
TypeScript
4
star
48

message-board

一条链接开启留言板,无需服务器
JavaScript
4
star
49

music-pc

by github.com/jonobr1/Neuronal-Synchrony
JavaScript
3
star
50

pixi-vue

pixi + vue3
JavaScript
3
star
51

tc-image

Image Editing Lib
TypeScript
3
star
52

ebuild-vite-vue3

ebuild-vite-vue3
JavaScript
3
star
53

tool

小工具
Vue
3
star
54

sener-best-practice

sener-best-practice
JavaScript
3
star
55

selon

Select * from jon
JavaScript
3
star
56

jet-js-cli

Jet 的脚手架工具,帮助您更便捷地使用Jet
JavaScript
3
star
57

leetcode

leetcode 记录
JavaScript
3
star
58

ts-jest-demo

ts + jest
TypeScript
3
star
59

react-ts

react + ts + antd-mobile + redux
JavaScript
3
star
60

electron-demo

electron-demo
JavaScript
3
star
61

university

甄别野鸡大学,查询大学信息
JavaScript
3
star
62

storage-enhance

Support multi-end enhanced storage js library
TypeScript
3
star
63

webapp-box

Web Application Container
JavaScript
3
star
64

electron-vue

electron-vue
JavaScript
3
star
65

laya-game2

JavaScript
3
star
66

sener-docs

Docs for Sener
JavaScript
3
star
67

landscape-simulator

Simulate landscape in scenes that cannot be landscaped
JavaScript
3
star
68

eveit

Event-emitter with strong support for type hints
JavaScript
3
star
69

weve

Develop Android with webview and native(kotlin) (like electron)
JavaScript
3
star
70

ebuild-template-npm

ebuild-template-npm
JavaScript
3
star
71

string-worker

Makes creating WebWorker easier
JavaScript
3
star
72

pixi-ts

JavaScript
2
star
73

design-pattern

JavaScript
2
star
74

excel

JavaScript
2
star
75

ebuild-template-rollup

ebuild-template-rollup
JavaScript
2
star
76

url-module-loader

url-module-loader
JavaScript
2
star
77

npm-ts-template

Typescript npm package template with ebuild cli
JavaScript
2
star
78

x-state

JavaScript
2
star
79

ebuild-template-vue

ebuild-template-vue 2.x
JavaScript
2
star
80

ebuild-template-css

ebuild-template-css
JavaScript
2
star
81

ebuild-template-light

ebuild-template-light
JavaScript
2
star
82

ebuild-template

JavaScript
2
star
83

formidable-fix

Revised version of https://github.com/node-formidable/formidable
JavaScript
2
star
84

ecsv

2
star
85

cmd-game

2
star
86

ebuild-template-lerna

ebuild template for monorepo project
JavaScript
2
star
87

cdn

cdn
JavaScript
2
star
88

ebuild-template-node-npm

ebuild-templat-node-npm
JavaScript
2
star
89

cnchar-app

cnchar 应用列表
2
star
90

sener-docs-cn

sener-docs 中文版本
JavaScript
2
star
91

drone

JavaScript
2
star
92

magic

Magic - Mind reading
JavaScript
2
star
93

jext

Next Jet Frame
JavaScript
2
star
94

code-game

TypeScript
2
star
95

node-es6-demo

node es6 template for ebuild cli
JavaScript
2
star
96

vue3-ts

Vue
2
star
97

dirty-word-filter

A js lib for dirty word filter
JavaScript
2
star
98

jet-template

jet-template
JavaScript
1
star
99

bql

Bind Query Library
JavaScript
1
star
100

minesweeper

Minesweeper game
TypeScript
1
star