2013年4月28日日曜日

PhotoShop CS4で使っているWinTab関数を調べた


会社のデクストップPC(XP)でPhotoShop CS4(とAE)を使うことになり、ちょこっと使っているWinTab APIを調べました。

WTQueueSizeGet
WTQueueSizeSet
WTPacketsPeek
WTPacketsGet
WTOverlap
WTClose
WTGetW
WTOpenW
WTInfoW

以外と少ない上、ほとんどSai用が流用出来そうな感じ。
いずれCS6体験版を使ってみるかもしれません。

2013年4月26日金曜日

ネタ:Saiをマルチタッチにしてみた

タッチパネル操作に応じて自動的にキーやマウスホイール操作を加えれば「くばぁ」出来るんじゃないかと思い作ってみました。

実用性は微妙ですが、思っていたよりそれっぽく動きました。


2013年4月21日日曜日

Sai用WinTab サイドボタン連打問題修正


Sai用WinTab(TF810C、Latitude 10及びそれと互換性のあるワコムドライバ使用Windows8機向け)
(2013/4/20版)

○概要
・TF810C、Latitude 10及びそれと互換性のあるワコムドライバのWindows8機でSaiの筆圧感知を有効にするdllです。
・筆圧調整、ボタン機能割り当て等、タブレットプロパティの機能はありません。
・SaiはVer1.1.0(正式版)で開発を行いました。1.2系(ベータ)ではテストしていません。
・Sai以外では使用できないでしょう。

○更新内容
・ペン側サイドスイッチのキーストローク連打不具合を修正(キーストローク以外は修正されていません)
・位置調整を画面回転したまま行えるように修正(調整の途中では回転させないでください)

○使い方
1.wintab32.dllとcal.exeをSaiフォルダにコピーしてください。
2.cal.exeを管理者として実行しタブレットの位置調整を行います。
サイドボタンでひとつ前の点に戻る。
何かキーを押すか、最初の点でサイドボタンを押すと終了します。
4点指定が終わるとSaveを訪ねるダイアログが出るので、OKを押すとwintab.iniを出力します。
3.Saiフォルダーにwintab.iniができたら、Saiを起動します(管理者として実行する必要があるかもしれません)。

レジストリ他は使用していないので、wintab32.dll、cal.exe、wintab.iniの削除でアンインストールできます。

○既知の問題
・2ボタンペンを使用しても、テール側サイドスイッチ設定は正常に機能しません。
・ペン側サイドスイッチ設定はキーストローク以外は正常に機能しません。
・システムが位置調整したカーソル移動と独自に位置調整を行うWinTab経由のカーソル移動が衝突しカーソルが振動します(描画は独自位置調整したカーソルの方から行われます)。
・ThinkPad Tablet2でも動作はしますが終了後スリープ解除に失敗します(電源ボタン長押し+一瞬離し2回ボタンONで復帰)。

○サイドスイッチ問題について
いろいろ調べましたがSai側にバグがあるのではないかと推測しています(正式のWinTabではWinTab側でサイドボタン設定できるため意識されなかったのではないでしょうか)。(あとペンの消しゴム側が範囲選択になるのもバグっぽい挙動ですね)
本来なら本物のWinTabと同じく独自にサイドボタン機能を実装するべきなのですが、今回は見送らせていただきます。

2013年4月17日水曜日

Windows8向けSai用wintabに位置調整追加


Windows8でSaiの筆圧検知を有効にするdll(TF810C及びそれと互換性のあるワコムドライバ使用Windows8機向け)

○概要
・TF810C及びそれと互換性のあるワコムドライバのWindows8機でSaiの筆圧感知を有効にするdllです。
・筆圧調整、ボタン機能割り当て等、タブレットプロパティの機能はありません。
・Sai以外では使用できないでしょう。

○更新内容
・位置調整用のcal.exeを追加しました。

○既知の問題
・システムが位置調整したカーソル移動と独自に位置調整を行うWinTab経由のカーソル移動が衝突しカーソルが振動します(描画は独自位置調整したカーソルの方から行われます)。
・ThinkPad Tablet2でも動作はしますが終了後スリープ解除に失敗します(電源ボタン長押し+一瞬離し2回ボタンONで復帰)。

○使い方
1.wintab32.dllとcal.exeをSaiフォルダにコピーしてください。
2.cal.exeを起動してタブレットの位置調整を行います。
サイドボタンでひとつ前の点に戻る。
何かキーを押すか、最初の点でサイドボタンを押すと終了します。
4点指定が終わるとSaveを訪ねるダイアログが出るので、OKを押すとwintab.iniを出力します。

3.Saiフォルダーにwintab.iniができたら、Saiを起動します。

レジストリ他は使用していないので、wintab32.dll、cal.exe、wintab.iniの削除でアンインストールできます。

○今後の予定
・ThinkPad Tablet2に対応したいが見通し立たず。

https://dl.dropboxusercontent.com/u/17137175/wintab.zip

一通り実装したつもり。
Latitude10やSurface Pro辺りでもワコムドライバーが出力するデータ形式が同じだったら動作するはずなんだけど、ThinkPad Tablet 2のように相性問題が出るかもしれない。


2013年4月13日土曜日

TF810CでSaiの筆圧有効になったので公開してみる


正直まだ実用性低いですが一応動いてます。

Sai用WinTab(TF810C向け)

○概要
・ASUS TF810CでSaiの筆圧感知を有効にするdllです。
・位置調整、筆圧調整、ボタン機能割り当て等、タブレットプロパティの機能はありません。
・Sai以外では使用できないでしょう。

○既知の問題
・キャリブレートされたシステムによるカーソル移動とキャリブレートされないWinTab経由のカーソル移動が衝突しカーソルが振動します(描画はキャリブレートされないカーソルの方から行われます)。

○使い方
wintab32.dllとwintab.iniをSaiフォルダにコピーしてください。
レジストリ他は使用していないので、wintab32.dllとwintab.iniの削除でアンインストールできます。

○今後の予定
・早めに簡易位置調整をつけたい。
・早期にThinkPad Tablet2に対応したいが機種依存ぽい問題があって見通し立たず。

2013年4月10日水曜日

フルスクラッチのSAI用WinTab

思ったより手間取ったけど、今日やっと動き出しました。


Windows7ではペン本来のマウス移動を抑止できるのにWindows8では出来ないようで、WinTab経由のSaiによるカーソル移動(推定)とペン本来のカーソル移動が衝突してカーソルが分身の術状態に(画面縁以外はそう問題にならないっぽいので今は無視してますが)。

実用レベルのものが出来るか分かりませんが、もちょっと弄ってみる予定。

http://youtu.be/ggRVmVUb90A