java文字特效
立體效果的文字
主要使用了Graphics類中的setFont和setColor的方法,繪制多層字然后加上平移一個(gè)坐標(biāo)即可實(shí)現(xiàn)多重疊加的效果,讓人看起來(lái)就像是立體一樣,詳情請(qǐng)見源碼
陰影效果的文字
和面一樣,只是平移的方式有些不同,詳情請(qǐng)見源碼
傾斜效果的文字
主要使用的時(shí)Graphics2D類的shear方法,使繪圖上下文傾斜,詳情見源碼
public abstract void shear(double shx,double shy)其中shx表示在正x軸方向移動(dòng)坐標(biāo)的乘數(shù),可以作為其y坐標(biāo)的函數(shù)
漸變效果的文字
主要使用了Graphics2D中的setPaint的方法,詳情請(qǐng)見源碼
public abstract void setPaint(Paint paint)paint封裝了漸變顏色的Paint對(duì)象
其中Paint對(duì)象的創(chuàng)建是由GradientPaint初始化的,其中的構(gòu)造函數(shù)如下:GradientPaint(float x1, float y1, Color color1, float x2, float y2, Color color2)
會(huì)變色的文字
這個(gè)主要使用了多線程的方式實(shí)現(xiàn)的,用多線程改變Color方法中的RGB的值,用Random在指定范圍內(nèi)任意取值然后組成了不同的顏色,詳情請(qǐng)見源碼
水印文字特效(源碼)
水印文字主要通過改變了文字的透明度實(shí)現(xiàn)的,將文字繪制在圖片上,然后改變圖片的透明度,主要使用了Graphaics2D中的setComposite方法,定義如下:
public abstract void setComposite(Composite comp),其中Comp是AlphaComposite對(duì)象,可以使用以下兩種方式創(chuàng)建
AlphaComposite alpha=AlphaComposite.getInstance(AlphaComposite.SRC_OVER,0.3f)獲得一個(gè)SRC_OVER規(guī)則的對(duì)象
AlphaComposite alpha=AlphaComposite.SC_OVER.driver(0.3f)同上
動(dòng)態(tài)繪制文本(源碼)
主要使用BufferedReader緩沖流從指定文件中讀取一個(gè)字符,然后使用線程一個(gè)一個(gè)的繪制在畫板上,中間sleep了400ms,這樣就能展示出動(dòng)態(tài)的效果,還使用了System類的getProperty方法獲得項(xiàng)目的路徑,以下提供了兩種方法讀取文件,更多的讀取方法請(qǐng)看我的博客文章
BufferedReader read=new BufferedReader(new FileReader(pathname))
BufferedReader read=new BufferedReader(new InputStreamReader(in))
由于都是比較簡(jiǎn)單的代碼,這里不再貼出來(lái)le,有想要看的朋友,請(qǐng)點(diǎn)擊上面的源碼
本人博客
總結(jié)
- 上一篇: 页面获取Spring Security登
- 下一篇: css 中图片旋转,倾斜,位移,平滑