编写cnchar-draw的demo批量识别笔画
生活随笔
收集整理的這篇文章主要介紹了
编写cnchar-draw的demo批量识别笔画
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
編寫cnchar-draw的demo批量識別筆畫
1. 先進(jìn)入makemeahanzi/中,運(yùn)行g(shù)enerate_words.py生成svg_words.txt,然后將生成的svg_words.txt復(fù)制到cnchar/npm/中去
2. 再安裝一個(gè)Node.js的環(huán)境,參照下面的博客,有報(bào)錯直接根據(jù)報(bào)的錯補(bǔ)裝一些東西即可
? ? [Linux系統(tǒng)] Ubuntu 安裝 Node.js
3. 配置cnchar-draw的環(huán)境
? ? 下載好cnchar,將要運(yùn)行的demo腳本放在./cnchar/npm下,然后在當(dāng)前位置打開終端$ node loadtxt.js運(yùn)行就行了,之后會生成outputs.txt,每一行記錄了 "漢字 筆畫序列"
var cnchar = require('./cnchar/index'); var poly = require('./poly/index'); var order = require('./order/index'); var trad = require('./trad/index');cnchar.use(order, trad, poly);var fs = require("fs"); var readLine = require("readline");// SVG中的有一些字cnchar是不能進(jìn)行筆畫解析的,這些字直接去掉就行了 function readFileToArr(fileName, callback) {var arr = [];var readObj = readLine.createInterface({input: fs.createReadStream(fileName)});// 一行一行地讀取文件readObj.on('line', function (line) {console.log(cnchar.stroke(line, 'order', 'shape'));arr.push(line + " " + cnchar.stroke(line, 'order', 'shape'));});// 讀取完成后,將arr作為參數(shù)傳給回調(diào)函數(shù)readObj.on('close', function () {callback(arr);}); }// 讀取數(shù)據(jù)后,處理完成后放入outpu.txt readFileToArr('./words.txt', function (arr) {// 通過回調(diào)得到的,按行獲得的數(shù)據(jù)console.log(arr);var tempArr = [];arr.forEach((ele) => {tempArr.push(ele);});fs.writeFile('./outputs.txt', tempArr.join("\n"),function (err) {if (err) throw err; }); });相關(guān)github:
總結(jié)
以上是生活随笔為你收集整理的编写cnchar-draw的demo批量识别笔画的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 线上渠道拓展:澳洲爱他美产品如何利用新媒
- 下一篇: 1788教你怎么推广游戏方法。《1》