Проверьте нажим, наклон, джиттер и отсечение ладони прямо в браузере. Работает с Apple Pencil, Samsung S Pen и Surface Pen, а также с графическими планшетами Wacom, XP-Pen и Huion — ничего устанавливать не нужно.
Ожидание ввода пером
Коснитесь стилусом экрана или проведите им чуть выше графического планшета. Ничего нельзя измерить, пока не придёт первое событие пера: ни один браузер не скажет, есть ли стилус, пока им не воспользуются.
Apple Pencil, Samsung S Pen, Surface Pen и перья Wacom, XP-Pen и Huion работают здесь все. Десктоп без сенсорного экрана подходит — графический планшет сам сообщает о себе как о пере.
Рисуйте здесь стилусом. Штрих утолщается по мере нажима — попробуйте один штрих от едва заметного касания до максимального давления.
Проведите штрих, чтобы проверить нажим пера
На этой странице рисует только стилус: мышь и палец игнорируются намеренно, чтобы ничто нельзя было принять за перо.
Стилус — это четыре отдельных измерения, притворяющиеся одним устройством: с какой силой вы давите, в какую сторону наклоняете, насколько ровно он рисует и что экран делает с вашей ладонью, пока вы работаете. Каждое из них ломается само по себе, и каждое проверяется выше отдельно.
Каждое событие пера несёт нажим от 0 до 1, и графические редакторы превращают это число в толщину штриха, непрозрачность или жёсткость кисти. Загвоздка в том, что число есть всегда: когда у устройства нет датчика силы, спецификация pointer предписывает браузеру сообщать ровно 0,5, пока кончик прижат. Поэтому неизменные 0,5 никогда не доказывают поддержку нажима и поэтому этот тест отказывается что-либо засчитывать, пока показания действительно не начнут меняться.
Apple Pencil, Samsung S Pen, Surface Pen и почти каждое перо графического планшета сообщают ещё и угол наклона — как tiltX и tiltY, как altitude и azimuth или как оба сразу, в зависимости от браузера. На этих значениях живут кисти для растушёвки и каллиграфические перья. Перо без датчика наклона всё равно сообщает идеально вертикальный ноль, а не отсутствие данных, поэтому наличие датчика доказывает только показание, ушедшее от вертикали.
Джиттер — это рябь, которую стилус оставляет на медленной линии, которая должна быть прямой. Он возникает из-за того, что дигитайзер интерполирует вашу позицию между сенсорными проводниками, поэтому проявляется на медленных диагоналях и прячется на быстрых штрихах, горизонталях и вертикалях — они идут вдоль сенсорной сетки. Дешёвые планшеты и некоторые пен-дисплеи гуляют на несколько пикселей; исправный держится примерно в пределах одного. Это особенность железа, а обычно не баг драйвера.
Пока перо в зоне действия, воспитанное устройство перестаёт сообщать о руке, лежащей на стекле. Эта страница считает каждое касание, приходящее, пока кончик прижат, — так что можно опираться на экран как обычно и посмотреть, что просочится. Вторая половина — hover: перо определяется ещё до касания, именно поэтому под неопущенным Apple Pencil появляется курсор. Ни один браузер не сообщает, насколько далеко перо, — только что оно рядом.
Графическому планшету сенсорный экран не нужен: его драйвер представляет перо системе, и браузер видит обычные события пера. Если с подключённым планшетом эта страница так и не выходит из состояния ожидания, значит, перо приходит как мышь — установите драйвер производителя вместо универсального, а в Windows проверьте, включён ли для планшета Windows Ink: именно он доносит нажим до браузеров.
Приложения читают перо разными путями: через Windows Ink, через старый интерфейс Wintab или через обычный ввод мыши. У графического редактора, настроенного на Wintab, нажим может работать безупречно, а браузер, использующий Windows Ink, не получит ничего — и наоборот бывает не реже. Если нажим работает здесь, но не в вашем приложении, лечится это в настройках планшета внутри самого приложения; если и здесь не работает — дело в драйвере или в пере.