Android 画图技巧应用方式解析
在
Android 操作系统开发中,对于图形界面的操作时非常常见的一个基础操作。我们可
以先通过本文介绍的有关
Android 画图的相关操作,来具体了解一下图形界面的操作技巧 ,
以此提高我们对这一系统的认知程度。
1
import java.io.InputStream; import android.app.Activity;
2
import android.content.Context; import android.graphics.Bitmap;
3
import android.graphics.BitmapFactory; import android.graphics.Canvas;
4
import android.graphics.Color; import android.graphics.LinearGradient;
5
import android.graphics.Paint; import android.graphics.PorterDuff;
6
import android.graphics.PorterDuffXfermode; import android.graphics.Shader;
7
import android.graphics.Typeface; import android.os.Bundle;
8
import android.view.View; public class AlphaBitmap extends Activity {
9
@Override protected void onCreate(Bundle savedInstanceState) {
10
super.onCreate(savedInstanceState); setContentView(new SampleView(this));
11
} private static class SampleView extends View {
12
private Bitmap mBitmap; private Bitmap mBitmap2;
13
private Bitmap mBitmap3; private Shader mShader;
14
private static void drawIntoBitmap(Bitmap bm) { float x = bm.getWidth();
15
float y = bm.getHeight(); // 建一个有制定对象的画布
16
Canvas c = new Canvas(bm); Paint p = new Paint();
17
// 主要用来消除边缘吧从效果上看 好像 false 的话有毛边 p.setAntiAlias(true);
18
p.setAlpha(0x555555);//灰色 c.drawCircle(x/2, y/2, x/2, p);
19
p.setAlpha(0x0000ff);//
蓝
色
p.setXfermode(new
PorterDuffXfermode(PorterDuff.Mode.SRC_OVER));
20
// 下面是字体的相关设置 p.setTextSize(20);
21
String
familyName
=
"
宋
体
";
Typeface
font
=
Typeface.create(familyName,Typeface.ITALIC);
22
p.setTypeface(font); p.setTextAlign(Paint.Align.CENTER);
23
Paint.FontMetrics fm = p.getFontMetrics(); c.drawText(" 我 爱 android", x/2, (y-
fm.ascent)/2, p);
24
} public SampleView(Context context) {
25
super(context); setFocusable(true);
26
// 得到图像的几种方法 InputStream is = context.getResources().
openRawResource(R.drawable.app_sample_code);
27
mBitmap = BitmapFactory.decodeStream(is); //从一幅图像抽取色值变为新的图像,
一般是画笔的颜色
同下面