tspl-image/README.md
2024-11-20 16:05:29 +08:00

80 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 图片灰度处理工具
这个程序可以处理本地图片和网络图片,提供两种灰度处理算法,并支持生成 TSPL 打印指令:
1. OTSU 自动阈值法
2. 平均灰度法
## 功能特点
- 支持本地图片和网络图片处理
- 提供 OTSU 和平均灰度两种处理算法
- 自动创建输出目录
- 保留原始文件名
- 生成 TSPL 打印指令
- 提供详细的处理信息输出
## 算法说明
1. **OTSU 算法**
- 自动计算最优阈值
- 适用于双峰直方图图像
- 输出文件名后缀为 `_otsu.jpg`
- 生成对应的 `_otsu.tspl` 打印指令文件
2. **平均灰度算法**
- 使用图像的平均灰度值作为阈值
- 简单快速,适用于对比度较好的图像
- 输出文件名后缀为 `_average.jpg`
- 生成对应的 `_average.tspl` 打印指令文件
## TSPL 打印指令
程序会为每个处理后的图像生成对应的 TSPL 打印指令文件:
- 自动计算适合的打印参数
- 支持自定义打印浓度和速度
- 生成标准 TSPL 指令格式
- 可直接发送到支持 TSPL 的打印机
## 使用方法
1. 安装依赖:
```bash
npm install
```
2. 运行程序:
```bash
npm start
```
## 输出说明
- 程序会在 `output` 目录下保存:
- 处理后的图片(.jpg
- TSPL 打印指令文件(.tspl
- 控制台会显示:
- 图片尺寸
- 计算得到的阈值
- 图片输出路径
- TSPL 指令文件路径
## 自定义使用
你可以修改 `src/index.js` 中的参数来处理其他图片:
```javascript
// 处理网络图片
const imageUrl = 'https://你的图片URL';
// 选择处理方法: 'otsu' 或 'average'
const result = await processor.processImage(imageUrl, outputDir, 'otsu');
```
你也可以自定义 TSPL 转换器的参数:
```javascript
const tsplConverter = new TSPLConverter({
density: 10, // 打印浓度 (0-15)
speed: 3, // 打印速度 (1-4)
width: 384 // 打印宽度(点)
});</content>