該項目的代碼已經重構,採用了新框架,強烈建議查看《Android全新圖片塗鴉框架Doodle——多功能、可自定義、可擴展》
(舊代碼暫時不維護了,所以推薦還是使用最新框架吧!也希望大夥支持!!!)
點擊移步到最新塗鴉框架>>>Doodle
————————————————————————————————————————————————
之前做過圖片塗鴉的功能,前段時間很多人問我要源碼,但因爲當時技術水平有限,功能雖然實現了,但代碼卻不利於閱讀,實現原理也過於“新手”,於是爲了方便他人學習參考,本人在工作之餘,經過漫長過程,終於把原有的代碼重構,使用更加簡潔明瞭的原理,實現圖片塗鴉功能。實現效果如下:
主要功能如下:
- 設置畫筆及形狀
畫筆可以選擇手繪、仿製、橡皮擦、文字,其中仿製功能跟PS中的類似,複製圖片中的某處地方。形狀可以選擇手繪、箭頭、直線、圓、矩形等。畫筆的底色可以選擇顏色,或者選擇一張畫布。
- 撤銷及清屏
每一步的操作都可以撤銷,清屏時將清除所有的操作。
- 放縮、移動及旋轉
在塗鴉的過程中,可以自由地通過手勢縮放和移動圖片,同時在多次縮放後,可快速居中圖片;支持旋轉圖片。
源碼在Github上的地址爲:https://github.com/1993hzw/Graffiti , 歡迎大家反饋問題,我會及時在上面更新代碼,謝謝支持。
這篇文章主要是介紹圖片塗鴉的功能,接下來我會抽空把實現的原理梳理出來,方便大家理解。基礎好的同學也可以先自行閱讀代碼,我已經寫好了註釋。