2020年10月1日

自作のWindows Journalもどき,外部ディスプレイにつなぎながら使うとあっという間にかけなくなってしまうことがわかり困っている.直接の原因はさっぱりわからないのだが,なんとなくな感じでは遅くなりすぎて入力が処理仕切れなくなっているという感じに思える.なので,一念発起してInkCanvasを使うのに変更してみた.今までのはペン入力の受付からStrokeの格納と描画まで全部こちらでやっていた(といっても実際の描画部分はWPFの担当だけど)のだが,それをほぼそのままInkCanvasに丸投げ.Microsoftの中の人が書いたものの方が絶対に速いはず.

それなりに時間がかかってしまったがとりあえずほぼ動くまで戻った.選択したストロークの移動がページをまたげなくなってしまったけどまぁいいや.InkCanvasをベースに,OnPreviewStylusDownでEditingModeをいじることでタッチ入力を無効化,OnStrokeCollectedなどに入り込んでUndo/Redo機能を実装,Custom Rendering Inkを参考にカスタムインクを追加(点線描画のため),あたりをやった.ちょっと負荷かけて動かしてみた感じは速くなっている気がする.

で,改めて外部ディスプレイつないで試してみた……やっぱり止まるじゃねーか.デバッグしてみてもOnStrokeCollectedとかのイベントが飛んできていないように見えるし,なんかもうどうしようもなさそう.試しに外部ディスプレイの解像度を下げて試してみたら大丈夫そうな感じ.うーん,こりゃもう無理だなぁ…….使うときは解像度下げてごまかして使うことになりそう.

0 件のコメント:

コメントを投稿

コメントの追加にはサードパーティーCookieの許可が必要です