一、前言
? ? ? ? 本系列將全面的介紹一些有關Android 畫圖方面的知識。筆觸功能包括:顏色、粗細、透明度、筆鋒、橡皮;繪圖功能包括:分頁、縮放、多指、撤銷恢復、筆畫加速。別看功能這么多,簡單的部分會花較少篇幅介紹,著重會講解復雜功能的實現。
? ? ? ? 這一章只展示效果,后續文章會逐步實現本章介紹的功能。
二、效果演示
?1、顏色、粗細、透明度
2、筆鋒效果
3、橡皮
橡皮涉及到功能有些復雜,分為三個功能:橡皮擦(基礎)、筆畫擦除(重點)、一鍵清屏(基礎)
- 橡皮擦:按照手寫的軌跡去擦除,這種方式是最常見
- 筆畫擦除:清除接觸到的筆畫,以筆畫為單位擦除
- 一鍵清屏:清空畫布
**注意:橡皮擦和筆畫擦除兩者可以聯動,經過橡皮擦擦除度筆畫,假如從中間斷開,分成兩個部分,筆畫擦除就得將該筆畫,按照兩個筆畫處理,可以分別擦除。
橡皮檫演示效果
4、分頁展示
預覽多個畫布內容,可以切換到目標畫布進行寫畫。
5、縮放功能
通過雙指操作實現對視圖放大縮小的操作
放大縮小操作
放大過的圖片
6、多指操作
縮放其實也是依賴多指實現的,畫圖同樣可以多指畫圖。
7、撤銷恢復
撤銷恢復本身實現并不困難,但是需要上面所有的操作都支持撤銷恢復,還是需要合理規劃。
8、筆跡加速
繪圖過程中,筆跡出現不跟手的情況。為了提高書寫體驗,可以使用算法加速和硬件加速兩種方式。