劉裕拯 黃政 歐陽(yáng)樂(lè) 張寶鑫
摘 要在智能手機(jī)龐大的應(yīng)用軟件市場(chǎng)中,從照片涂鴉到隨手筆記,繪板類(lèi)APP作為重要的娛樂(lè)軟件豐富了我們的生活。本文提出了一款基于Android平臺(tái)的毛筆仿真效果的手寫(xiě)APP,使我們能夠在手寫(xiě)時(shí)生成具有毛筆仿真筆跡效果的圖片,并予以保存、發(fā)送。同時(shí)設(shè)計(jì)了軟件的外觀,描述了實(shí)現(xiàn)此APP的算法技術(shù)。
【關(guān)鍵詞】Android 繪板 手寫(xiě) 毛筆仿真
隨著智能手機(jī)應(yīng)用軟件市場(chǎng)的不斷擴(kuò)大,繪板類(lèi)APP也越來(lái)越多。從一開(kāi)始的簡(jiǎn)單涂鴉到手繪軟件,人們對(duì)于繪畫(huà)的娛樂(lè)性與藝術(shù)性的要求也與日俱增。本文設(shè)計(jì)提出了一款基于Android的仿毛筆效果的手寫(xiě)APP,它類(lèi)似于常見(jiàn)的繪板軟件,同時(shí)會(huì)將我們的手寫(xiě)筆跡轉(zhuǎn)變?yōu)槊P風(fēng)格,使之更具娛樂(lè)性與藝術(shù)性。
1 應(yīng)用市場(chǎng)
目前各類(lèi)應(yīng)用市場(chǎng)上的繪板類(lèi)APP,大多受到用戶的好評(píng),其大致可以分為以下三類(lèi):相冊(cè)涂鴉類(lèi),隨筆繪板類(lèi),專業(yè)繪板類(lèi)。其中,第一類(lèi)軟件功能簡(jiǎn)單,可玩性不強(qiáng),多用于朋友圈照片分享;第三類(lèi)軟件,如SBM(Autodesk SketchBook Mobile)功能強(qiáng)大,操作復(fù)雜,上手難度高,可用于制作精美的繪畫(huà)以及圖片的細(xì)節(jié)修改;而第二類(lèi),諸如各類(lèi)記事本軟件,可以輕松涂鴉,方便記事,產(chǎn)生了許多小而美的軟件,本文所設(shè)計(jì)的軟件即屬此類(lèi)。
2 軟件說(shuō)明
此款A(yù)PP是運(yùn)行在Android平臺(tái)上的單機(jī)獨(dú)立軟件?;贏ndroid4.1版本開(kāi)發(fā),在Android5.0版本上也測(cè)試通過(guò)。通過(guò)模擬毛筆書(shū)寫(xiě)效果,起到了對(duì)手寫(xiě)筆畫(huà)優(yōu)化的作用,生成了具有毛筆書(shū)寫(xiě)效果的圖片,保存在系統(tǒng)默認(rèn)的根目錄下,詳細(xì)位置為:/scard0/picture,用戶可在智能機(jī)的相冊(cè)中輕松找到當(dāng)前的手寫(xiě)繪圖作品。
3 簡(jiǎn)要設(shè)計(jì)
3.1 界面設(shè)計(jì)
為了追求精簡(jiǎn)干凈,繪圖界面設(shè)計(jì)成倒T字形,整個(gè)界面中只有底部有常駐工具欄,提供基本的操作按鈕,右側(cè)為滑動(dòng)窗口小圖標(biāo)。為了回避按鈕較多造成的不美觀,設(shè)計(jì)時(shí)放棄了較多的按鈕,只提供了,即時(shí)分享,保存繪畫(huà),清除繪畫(huà)三個(gè)個(gè)按鈕。手機(jī)全屏全部是繪畫(huà)區(qū),而且最底部的工具欄采用透明設(shè)計(jì),這樣可以將繪畫(huà)區(qū)的面積最大化,使手寫(xiě)的感覺(jué)更加舒適。
3.2 功能設(shè)計(jì)
為了是此款獨(dú)立軟件使用起來(lái)更加方便,功能上設(shè)計(jì)了兩個(gè)滑動(dòng)窗口。一個(gè)是底部滑動(dòng)窗口,一個(gè)是右側(cè)滑動(dòng)窗口。其中,底部滑動(dòng)窗口可向上滑動(dòng),提供繪制的圖片預(yù)覽功能,相當(dāng)于相冊(cè)。同時(shí)設(shè)計(jì)了點(diǎn)擊預(yù)覽圖片跳轉(zhuǎn)到相冊(cè),長(zhǎng)按圖片可刪除的功能,這樣既可以快速刪除,也可以充分調(diào)用手機(jī)自帶相冊(cè)的其他功能。而右側(cè)設(shè)計(jì)實(shí)現(xiàn)的滑動(dòng)菜單,為了補(bǔ)充繪畫(huà)功能,提供了筆觸調(diào)節(jié)的功能,如:筆畫(huà)粗細(xì)調(diào)節(jié),筆墨濃淡設(shè)置,橡皮擦,撤銷(xiāo)上一步操作等。使軟件功能更加完整。
4 技術(shù)實(shí)現(xiàn)
由于此款A(yù)PP是Android上的單機(jī)軟件,軟件體積應(yīng)盡量小,所以我們并沒(méi)有采用龐大的筆畫(huà)庫(kù)設(shè)計(jì),將用戶的手寫(xiě)筆跡與數(shù)據(jù)庫(kù)中的筆畫(huà)進(jìn)行匹配,而是直接對(duì)手寫(xiě)筆跡進(jìn)行取樣、參數(shù)調(diào)整、后臺(tái)處理、圖形回顯等一系列操作產(chǎn)生仿真圖像。
毛筆效果說(shuō)明:毛筆筆尖一般是由獸毛扎成束狀,其下筆并不如鉛筆一樣是單一軌跡,因而下筆會(huì)有一定程度的縱深與側(cè)傾。在這里,縱深定義為毛筆筆尖各簇毛須所產(chǎn)生的效果。側(cè)傾定義為毛筆非垂直繪畫(huà)時(shí),由筆桿側(cè)傾產(chǎn)生的局部墨水偏濃,筆畫(huà)肥厚的效果。
5 效果模擬
5.1 縱深效果
為了方便敘述,我們定義如圖1所示的ABCD這樣四個(gè)點(diǎn)。
其中AB方向?yàn)槔L制方向,CD方向與AB方向垂直。假設(shè)點(diǎn)C到線段AB的距離為2個(gè)單位長(zhǎng)度(這個(gè)長(zhǎng)度由筆畫(huà)粗細(xì)決定,可以人為設(shè)置),那么點(diǎn)D到線段AB的距離應(yīng)該與C相近,但不相等,如2.3或2.5個(gè)單位長(zhǎng)度,這個(gè)數(shù)值通過(guò)手寫(xiě)的按壓面積獲取,并進(jìn)行一定的處理。
在手寫(xiě)過(guò)程中,線段AB是我們所能實(shí)際捕捉到的軌跡。為了模擬毛筆的縱深效果,我們將在線段CD的長(zhǎng)度范圍內(nèi),作線段AB的平行線(嚴(yán)格的說(shuō)并不是平行線而且大多數(shù)都不是平行線),并通過(guò)對(duì)這些平行線的數(shù)目及分布進(jìn)行合理調(diào)整,來(lái)達(dá)到目的,如圖2所示。即在線段AB周?chē)x散地分布一組線段來(lái)模擬毛筆的筆須,當(dāng)這一組線段的數(shù)目足夠多,并且位置足夠合理的時(shí)候,就能達(dá)到仿真毛筆筆跡的效果。
5.2 側(cè)傾效果
當(dāng)自由繪制的時(shí)候,筆畫(huà)路徑顯然不如上述規(guī)整。為方便敘述,我們假設(shè)前一個(gè)筆畫(huà)路徑的取樣點(diǎn)為O,現(xiàn)在正在繪制的取樣點(diǎn)為P,P為側(cè)傾效果產(chǎn)生后實(shí)際繪制的點(diǎn),即將繪制出的點(diǎn)為Q。并以點(diǎn)P為圓心,繪制一個(gè)指定半徑的圓,這個(gè)半徑由筆畫(huà)的粗細(xì)決定,可以在軟件的右滑菜單中人為調(diào)節(jié)。如圖3所示。
在手寫(xiě)過(guò)程中,我們對(duì)手寫(xiě)筆畫(huà)進(jìn)行取樣。當(dāng)點(diǎn)Q繪制成功的時(shí)候,通過(guò)計(jì)算點(diǎn)OPQ之間的夾角,決定P的位置,并繪制OP,Q P線段。為了防止生成的圖像變形,點(diǎn)P有相當(dāng)高的概率落在以P為圓心的指定的圓中,在測(cè)試的算法中,這個(gè)概率在90%以上。當(dāng)單位線段上,取樣點(diǎn)恰當(dāng)時(shí),可以較好的達(dá)到仿真筆跡的效果。這里需要特別說(shuō)明的是,取樣點(diǎn)不能太多,太多會(huì)導(dǎo)致筆跡沒(méi)有濃淡差別。
6 結(jié)論
綜上所述,為補(bǔ)充手寫(xiě)繪板的娛樂(lè)性與藝術(shù)性,本文設(shè)計(jì)提出了一款基于Android平臺(tái)的手寫(xiě)毛筆圖形生成APP,并給出了模擬筆觸的關(guān)鍵算法。該軟件界面精簡(jiǎn),操作簡(jiǎn)單,可玩性強(qiáng),具有良好的娛樂(lè)性。
參考文獻(xiàn)
[1]張海江.中國(guó)水墨畫(huà)仿真中幾個(gè)關(guān)鍵問(wèn)題的研究[D].天津大學(xué),2004.
[2]陳露開(kāi).基于輪廓方法的實(shí)時(shí)手寫(xiě)美化技術(shù)及應(yīng)用[D].華南理工大學(xué),2014.
[3]熊文闊.基于Android平臺(tái)手機(jī)圖形編輯軟件的設(shè)計(jì)與實(shí)現(xiàn)[D].北京郵電大學(xué),2011.
作者簡(jiǎn)介
劉裕拯(1995-),男,現(xiàn)為四川大學(xué)本科生。計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)。
作者單位
四川大學(xué)計(jì)算機(jī)學(xué)院 四川省成都市 610207