本筆記整理自此噗
終於在知乎上找到實現「長按感壓筆側鍵暫時切換到橡皮擦工具」的辦法
Krita无法使用数位笔的侧键橡皮怎么办?教你用AHK在Krita中模拟数位板的「橡皮擦键」
不過這辦法只解決了我問題的一部份,krita的橡擦主要有三個問題
- a. 不支援:使用wacom設定,將「擦除」指派到感壓筆側鍵
- b. 不支援:長按e鍵使用擦子,放開e鍵回到剛才使用中的筆刷
- c. 不支援:按下e鍵切換到「獨立的橡皮擦」,而不是「與筆刷設定通用的擦除模式」
連結中提出的辦法解決了問題a和b,但沒有解決問題c
昨天測試下,找到同時解決三個問題的方法!
操作步驟
- 安裝 AutoHotKey,我安裝的是較舊的1.3版
- 打開記事本創建副檔名為.ahk的文件檔,檔名和存放路徑都隨意,文件內貼上以下代碼
!^j::
send j
keywait lshift
return
!^j Up::
send j
return
- 將Wacom感壓筆側鍵指派為鍵盤的「ctrl+alt+J」
- 進入Krita-> 工具 -> 指令稿 -> 十大筆刷,將需要用的擦子拉進去(假設為第一格)
- 下方勾選「第二次按下捷徑時切換至先前的筆刷預設」
- 進入設定 -> 設定krita -> 鍵盤快捷鍵 -> 十大筆刷 -> 啟動筆刷預設1 -> 指派按鍵為J
- 雙擊ahk文件(=運行ahk檔),快樂享受正常的橡皮擦
雖然可以開心用擦子了,但此法有個小缺陷,當鼠標跳出Krita與其他視窗互動,再回到Krita之後,橡皮擦切換會失靈個幾秒。稍等一下就會恢復正常,或是可手動先切換到其他筆刷,再切換回自己要用的筆刷,可以提早恢復正常。
限定AHK腳本只針對Krita作用
在AHK腳本中加入:
GroupAdd Krita, ahk_class QWidget
GroupAdd Krita, ahk_exe krita.exe
#IfWinActive ahk_group Krita
Shortcut composer
補充一下,如果只需要解決問題a和b(krita的擦除模式已能滿足需求),其實也不需要AHK,直接下載這個python插件匯入krita:Shortcut composer
- 下載Shortcut Composer壓縮包(現為1.4版)
- 工具 -> 指令稿 -> 自檔案匯入Python外掛 -> 選取剛才下載的zip包
- 設定 -> 設定krita -> 鍵盤快捷鍵 -> Shortcut Composer: Temporary Tools -> Temporary eraser -> 指派自己習慣的快捷鍵
使用時注意以下:
- 快捷要和Wacom側鍵設定相同(通常是e鍵)
- 個人測試下,4.x版的krita似乎無法正常用使這個插件,要升到5.x版以上
碎念
至於krita不支援上述的abc三點,具體會有多難用?
- 擦除時要按一下e鍵,擦完還要再按一下e鍵才會回到剛才的筆刷
- krita的擦除模式基本只是將目前正在用的筆刷變成擦子,其筆尖形狀、尺寸、感壓等參數都直接套過去。假設一般漫畫繪者習慣的筆刷尺寸是5-15px,切換到擦除模式的擦子也只有5-15px大小。
這不就是逼我去用和G筆尖一樣細的橡皮擦擦線稿嗎
啊是誰會這麼自虐想每次切擦子都要重新拉大擦頭,然後切筆刷又要再拉小筆尖啊
Krita的橡皮擦切換應該是惡名昭彰地刁難人,很難相信這麼多年來開發團隊對這個基本中的基本問題仍然沒有共識… 目前常聽到的理由是因為krita內的擦子與筆刷都屬於「同一種工具」,因此難以讓同一種工具做暫時切換。
那讓十大筆刷去做暫時切換總該辦得到吧…也是至今還沒加上去的功能¯\(ツ)/¯