如何获取数位板压感信息?windows API似乎可解,js就别想了

Ibu from stackoverflow

You can only do so in an Native app. Javascript does not have access to pen pressure information

但是在wacom官网发现了STU SigCaptX,也许大概和压感服务有关。

img

尝试一波?

除此之外还有harryeakins/collabboard:Realtime collaborative drawing app with support for Wacom Tablet pressure sensitivity

===========

选了几段大佬的分享。

曹大夯

\1. 参考Windows Touch Program Guid
1.1 参考Windows Touch Input
1.2 处理WM_TOUCH信息来获取压力值,重点参考函数GetTouchInputInfo Function和结构TOUCHINPUT Structure
1.3 MSDN里面没有介绍Pressure参数的处理,需要你自己去探索,重点参考TOUCHINPUT里的 ULONG_PTR dwExtraInfo;(压力值可能在这个指针的数据里面)
DWORD cxContact; (触点接触面的宽度)
DWORD cyContact; (触点接触面的高度)
1.4 可以用Visual Studio带的信息Hook工具,Hook一下Hanvo Tablet的示例工具获得的WM_TOUCH信息,有助于知道有效的压力值在什么地方。

2.从驱动程序和设备的角度考虑,
2.1 设备的压力值应该是通过HID Usage: Pressure (page 0x0D, usage 0x30)传给系统的
2.2 如果你了解一些驱动知识,可以用WDK里的HClient获取设备的HID Device Descriptor,确认设备是否支持page 0x0D, usage 0x30.甚至可以直接分析HID Report来获取压力值。

EFFUN

Reading Pen Pressure in C++

How to get graphic tablet pen pressure value? – Stackflow

GetPointerPenInfo function

Share