# ocr-json-engine
**Repository Path**: nachao/ocr-json-engine
## Basic Information
- **Project Name**: ocr-json-engine
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-01-07
- **Last Updated**: 2026-01-07
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# OCR JSON Engine
通用动作引擎 - 基于 JSON 配置的图像识别和自动化操作引擎
## 📦 安装
```bash
npm install ocr-json-engine
```
## 🚀 快速开始
### 浏览器环境
```html
```
### Node.js 环境
```javascript
const { UniversalActionEngine } = require('ocr-json-engine');
const fs = require('fs');
const engine = new UniversalActionEngine();
// 设置适配器
engine.setAdapter({
async ocrFn(params) { /* ... */ },
async adbClick(params) { /* ... */ },
async adbSwipe(params) { /* ... */ }
});
// 加载配置(Node.js 需要自定义 fetch)
const config = JSON.parse(fs.readFileSync('config.json', 'utf-8'));
engine.start(config);
```
### ES6 模块
```javascript
import { UniversalActionEngine } from 'ocr-json-engine';
const engine = new UniversalActionEngine();
engine.start('config.json');
```
## 📋 配置文件示例
```json
{
"units": {
"closeDialog": "click:470:80",
"clickAt": "click:$x:$y"
},
"variables": {
"itemList": [ ... ]
},
"actions": [
"@units:closeDialog",
"@units:clickAt({ x: 470, y: 80 })"
]
}
```
## 🔧 适配器接口
实现以下3个方法即可适配到任何场景:
```javascript
const adapter = {
async ocrFn(params) {
// params: { area?: "x,y,width,height", erase_template?: "模板名" }
// 返回: { result: { text: "...", boxes: [...] } }
},
async adbClick(params) {
// params: { x: number, y: number }
},
async adbSwipe(params) {
// params: { x: number, y: number, d: number }
}
};
```
## 📚 文档
详细文档请查看 [docs 目录](docs/):
- [配置文档索引](docs/config/CONFIG_INDEX.md) - 所有配置文档的索引
- [使用说明](docs/USAGE.md) - 如何使用包
- [插件系统说明](docs/guides/PLUGINS.md) - 如何创建和注册自定义插件 ⭐
- [适配器示例](docs/guides/ADAPTER_EXAMPLES.md) - 适配器使用示例
- [引擎依赖说明](docs/guides/ENGINE_DEPENDENCIES.md) - 依赖和迁移指南
## 📄 License
MIT