android從入門到精通第9章常用繪圖類_第1頁(yè)
android從入門到精通第9章常用繪圖類_第2頁(yè)
android從入門到精通第9章常用繪圖類_第3頁(yè)
android從入門到精通第9章常用繪圖類_第4頁(yè)
android從入門到精通第9章常用繪圖類_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

常用繪圖類支持網(wǎng)站:本講大綱:1、Paint類2、Canvas類3、Bitmap類4、BitmapFactory類Paint類Paint類代表畫筆,用來描述圖形的顏色和風(fēng)格,如線寬、顏色、

透明度和填充效果等信息。使用Paint類時(shí),需要先創(chuàng)建該類的對(duì)象,

這可以通過該類提供的構(gòu)造方法來實(shí)現(xiàn)。通常情況下,只需要使用無

參數(shù)的構(gòu)造方法來創(chuàng)建一個(gè)使用默認(rèn)設(shè)置的Paint對(duì)象,具體代碼如下:Paint

paint=new

Paint();。Paint類的常用方法方法描述setARGB(int

a,

int

r,

int

g,

int

b)用于設(shè)置顏色,各參數(shù)值均為0~255之間的整數(shù),分別用于表示透明度、紅色、綠色和藍(lán)色值setColor(int

color)用于設(shè)置顏色,參數(shù)color可以通過Color類提供的顏色常量指定,也可以通過Color.rgb(int

red,int

green,int

blue)方法指定setAlpha(int

a)用于設(shè)置透明度,值為0~255之間的整數(shù)setAntiAlias(boolean

aa)用于指定是否使用抗鋸齒功能,如果使用會(huì)使繪圖速度變慢setDither(boolean

dither)用于指定是否使用圖像抖動(dòng)處理,如果使用會(huì)使圖像顏色更加平滑和飽滿,更加清晰setPathEffect(PathEffect

effect)用于設(shè)置繪制路徑時(shí)的路徑效果,例如點(diǎn)畫線setShader(Shader

shader)用于設(shè)置漸變,可以使用LinearGradient(線性漸變)、RadialGradient(徑向漸變)或者SweepGradient(角度漸變)setShadowLayer(float

radius,

float

dx,

float

dy,

int

color)用于設(shè)置陰影,參數(shù)radius為陰影的角度,dx和dy為陰影在x軸和y軸上的距離,color為陰影的顏色。如果參數(shù)radius的值為0,那么將沒有陰影setStrokeCap(Paint.Cap

cap)用于當(dāng)畫筆的填充樣式為STROKE或FILL_AND_STROKE時(shí),設(shè)置筆刷的圖形樣式,參數(shù)值可以是Cap.BUTT、Cap.ROUND或Cap.SQUARE。主要體現(xiàn)在線的端點(diǎn)上setStrokeJoin(Paint.Join

join)用于設(shè)置畫筆轉(zhuǎn)彎處的連接風(fēng)格,參數(shù)值為Join.BEVEL、Join.MITER或Join.ROUNDsetStrokeWidth(float

width)用于設(shè)置筆觸的寬度setStyle(Paint.Style

style)用于設(shè)置填充風(fēng)格,參數(shù)值為Style.FILL、Style.FILL_AND_STROKE或Style.STROKEsetTextAlign(Paint.Align

align)用于設(shè)置繪制文本時(shí)的文字對(duì)齊方式,參數(shù)值為Align.CENTER、Align.LEFT或Align.RIGHTsetTextSize(float

textSize)用于設(shè)置繪制文本時(shí)的文字的大小setFakeBoldText(boolean

fakeBoldText)用于設(shè)置是否為粗體文字setXfermode(Xfermode

xfermode)用于設(shè)置圖形重疊時(shí)的處理方式,例如合并、取交集或并集,經(jīng)常用來制作橡皮的擦除效果Canvas類Canvas類代表畫布,通過該類提供的方法,我們可以繪制各種圖形(例如,矩形、圓形和線條等)。通常情況下,要在Android中繪圖,需要先創(chuàng)建一個(gè)繼承自View類的視圖,并且在該類中重寫它的

onDraw(Canvas

canvas)方法,然后在顯示繪圖的Activity中添加該視圖。Bitmap類Bitmap類代表位圖,它是Android系統(tǒng)中圖像處理的最重要類之一。使用它不僅可以獲取圖像文件信息,進(jìn)行圖像剪切、旋轉(zhuǎn)、縮放等操作,而且還可以指定格式保存圖像文件。Bitmap類提供的常用方法如下表所示。方法描述compress(Bitmap.CompressFormat

format,

int

quality,

OutputStream

stream)用于將Bitmap對(duì)象壓縮為指定格式并保存到指定的文件輸出流中,其中format

參數(shù)值可以是Bitmap.CompressFormat.PNG

、Bitmap.CompressFormat.JPEG和Bitmap.CompressFormat.WEBPcreateBitmap(Bitmap

source,

int

x,

int

y,

int

width,

int

height,

Matrix

m,boolean

filter)用于從源位圖的指定坐標(biāo)點(diǎn)開始,“挖取”指定寬度和高度的一塊圖像來創(chuàng)建新的Bitmap對(duì)象,并按Matrix指定規(guī)則進(jìn)行變換createBitmap(int

width,

int

height,

Bitmap.Config

config)用于創(chuàng)建一個(gè)指定寬度和高度的新的Bitmap對(duì)象createBitmap(Bitmap

source,

int

x,

int

y,

int

width,

int

height)用于從源位圖的指定坐標(biāo)點(diǎn)開始,“挖取”指定寬度、和高度的一塊圖像來創(chuàng)建新的Bitmap對(duì)象createBitmap(int[]

colors,

int

width,

int

height,

Bitmap.Config

config)使用顏色數(shù)組創(chuàng)建一個(gè)指定寬度和高度的新Bitimap對(duì)象,其中,數(shù)組元素的個(gè)數(shù)為width*heightcreateBitmap(Bitmap

src)用于使用源位圖創(chuàng)建一個(gè)新的Bitmap對(duì)象createScaledBitmap(Bitmap

src,

int

dstWidth,

int

dstHeight,

boolean

filter)用于將源位圖縮放為指定寬度和高度的新的Bitmap對(duì)象isRecycled()用于判斷Bitmap對(duì)象是否被回收recycle()強(qiáng)制回收Bitmap對(duì)象Bitmap

bitmap=Bitmap.createBitmap(newint[]{Color.RED,Color.GREEN,Color.BLUE,Color.MAGENTA},

4,

1,

Config.RGB_565);BitmapFactory類在Android中,還提供了一個(gè)BitmapFactory類,該類為一個(gè)工具類,用于從不同的數(shù)據(jù)源來解析、創(chuàng)建Bitmap對(duì)象。BitmapFactory類提供的創(chuàng)建Bitmap對(duì)象的常用方法如下表所示。方法描述decodeFile(String

pathName)用于從給定的路徑所指定的文件中解析、創(chuàng)建Bitmap對(duì)象decodeFileDescriptor(FileDescriptor

fd)用于從FileDescriptor對(duì)應(yīng)的文件中解析、創(chuàng)建Bitmap對(duì)象decodeResource(Resources

res,

int

id)用于根據(jù)給定的資源ID從指定的資源中解析、創(chuàng)建Bitmap對(duì)象decodeStream(InputStream

is)用于從指定的輸入流中解析、創(chuàng)建Bitmap對(duì)象例如,要解析SD卡上的圖片文件img01.jpg,并創(chuàng)建對(duì)應(yīng)的Bitmap對(duì)象可以使用下面的代碼。String

path="/sdcard/pictures/bccd/img01.jpg";Bitmap

bm=BitmapFactory.decodeFile(path);要解析Drawable資源中保存的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論