Python Wacom接口

2 投票
2 回答
2902 浏览
提问于 2025-04-16 10:56

我正在Windows 7上写一个Python脚本,想要和我的Wacom Bamboo Pen平板互动。Wacom建议使用WinTab API,这个方法是可以的,但不适合我的应用。我不想让Wacom平板作为指针设备使用(也就是说,它不应该移动光标)。我只想要设备的原始x和y坐标数据。

实现这个的最好方法是什么呢?我需要为平板写一个不同的驱动程序吗?还是可以修改现有的Wacom驱动,让它不影响系统光标呢?

2 个回答

0

之前提到过,你需要使用Python计算机图形工具包cgkit

如果你不想从头开始安装这个工具包,并且不介意使用旧版本的Python,那么你可以直接使用现成的安装包。

在Windows上测试过的版本是32位的Python 3.2。你可以从这里下载并安装Python。

然后,从这里下载并安装Python计算机图形工具包。

接下来,运行以下两行代码来检查Wintab驱动程序是否可用:

from cgkit import wintab
print(wintab.available())

如果你看到False,那就说明你需要安装驱动程序。

你可以从这里下载驱动程序。

安装完驱动程序后,重启电脑,然后再试一次这两行代码,你应该会看到True

现在,如果你想获取手写笔的数据,可以参考Python的wintab封装文档

1

我觉得,在wintab中你可以获取到原始的坐标。至少在wintab的Python封装中,你可以访问这些坐标:

cgkit.wintab.Packet.x

在绝对模式下,这里包含的是光标在x轴上的位置(经过缩放处理)。在相对模式下,这里包含的是光标位置变化的大小(也经过缩放处理)。

cgkit.wintab.Packet.y

在绝对模式下,这里包含的是光标在y轴上的位置(经过缩放处理)。在相对模式下,这里包含的是光标位置变化的大小(也经过缩放处理)。

我正在自己调查是否有跨平台的平板电脑API,但如果你只需要Windows的解决方案,这个应该可以用。

撰写回答