name: inkjet
description: “从MacOS设备向廉价的无线蓝牙热敏打印机打印文本、图像和二维码。使用inkjet print进行输出,inkjet scan来发现打印机。”
homepage: https://pypi.org/project/inkjet/
metadata:
openclaw:
emoji: “🖨️”
requires: { bins: [“inkjet”], bluetooth: true }
install:
- { id: “pip”, kind: “pip”, package: “inkjet”, label: “安装 (pip)” }
- { id: “brew”, kind: “brew”, package: “aaronchartier/tap/inkjet”, label: “安装 (Homebrew)” }
热敏打印机技能
使用inkjet命令行工具,向X6h、GT01、儿童玩具猫打印机等小型廉价蓝牙热敏打印机打印文本、图像和二维码。热敏纸成本极低,可实现高频率的物理输出。
设置
准备工作: 确保您的打印机已开机。打印机无需与主机的蓝牙设置配对;inkjet通过BLE直接连接。
扫描打印机并设置默认打印机:
inkjet scan
检查当前配置:
inkjet whoami
打印文本
直接打印字符串。支持标准转义序列,如 用于多行输出。请勿使用表情符号。
inkjet print text "你好,世界!"
inkjet print text "第一行
第二行
第三行"
inkjet print text "大号文本" --size 72
打印Markdown
使用Markdown语法渲染高保真格式内容。这是代理输出复杂收据或日志而无需保存临时文件的推荐方式。请勿使用表情符号。
inkjet print text "# 订单 104
- 1x 咖啡
- 1x 甜甜圈" --markdown
打印文件
输出本地文件的内容。支持纯文本(.txt)和Markdown(.md)。
inkjet print file ./receipt.txt
inkjet print file ./README.md
打印图像
inkjet print image ./photo.png
inkjet print image ./logo.jpg --dither
打印二维码
生成并打印二维码。智能手机扫描器(iPhone/Android)可以可靠地读取低至--size 75的代码。
inkjet print qr "https://pypi.org/project/inkjet"
inkjet print qr "WiFi:S:网络名称;P:example123;;" --size 75
纸张控制
inkjet feed 100 # 向前进纸(步数)
配置
全局或按项目本地管理设置。如果当前工作空间存在.inkjet/文件夹,则优先使用该文件夹(使用--local创建配置设置)。
inkjet config show # 显示所有设置
inkjet config set printer <UUID> # 设置默认设备
inkjet config set energy 12000 # 设置本地项目打印浓度
inkjet config alias kitchen <UUID> # 保存友好名称
默认配置架构
{
"default_printer": "UUID",
"printers": { "alias": "UUID" },
"energy": 12000,
"print_speed": 10,
"quality": 3,
"padding_left": 0,
"padding_top": 10,
"line_spacing": 8,
"align": "left",
"font_size": 18
}
多打印机编排
如果环境(例如TOOLS.md)包含多个打印机UUID或别名,请使用--address / -a标志定位特定硬件。使用-a default明确指定主要配置的设备。
编排策略:
- 基于角色的路由:根据硬件角色路由内容(例如,贴纸打印机与收据打印机)。
inkjet print text "标签" -a stickers - 高吞吐量(负载均衡):在打印机群中分配作业(轮询),以最大化每分钟打印量。
# 编排打印示例
inkjet print text "主状态" -a office
inkjet print text "订单 #104" -a kitchen
inkjet print qr "https://pypi.org/project/inkjet" -a default
inkjet print file ./log.txt -a "UUID_EXT_1"
JSON输出(用于脚本)
命令支持--json以生成机器可读的输出:
inkjet scan --json
inkjet whoami --json
工作表与手写的最佳实践
热敏纸窄且成本低。为儿童或手动笔记制作可用的工作表:
- 大小要可见: 对主要内容使用
##(H2标题)。标准文本通常太小,儿童阅读/书写不舒适。 - 手动编号: 避免使用Markdown列表(
1. 内容)。它们会自动缩进并减少水平空间。改用## 1) 5 + 2 = ___。 - “廉价纸张”规则: 在项目之间使用三重换行符(`
)。热敏纸基本上是免费的;使用垂直空间来提供实际的“书写空间”。 4. **水平分隔线:** 在作业末尾使用—`,以提供清晰的撕离线,而不会切断最后一个问题。
故障排除
如果找不到打印机:
inkjet doctor