在Android 操作系统开发中,对于图形界面的操作时非常常见的一个基础操作。我们可以先通过本文介绍的有关Android画图的相关操作,来具体了解一下图形界面的操作技巧,以此提高我们对这一系统的认知程度。

创新互联公司-专业网站定制、快速模板网站建设、高性价比墨玉网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式墨玉网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖墨玉地区。费用合理售后完善,10年实体公司更值得信赖。
- import java.io.InputStream;
 - import android.app.Activity;
 - import android.content.Context;
 - import android.graphics.Bitmap;
 - import android.graphics.BitmapFactory;
 - import android.graphics.Canvas;
 - import android.graphics.Color;
 - import android.graphics.LinearGradient;
 - import android.graphics.Paint;
 - import android.graphics.PorterDuff;
 - import android.graphics.PorterDuffXfermode;
 - import android.graphics.Shader;
 - import android.graphics.Typeface;
 - import android.os.Bundle;
 - import android.view.View;
 - public class AlphaBitmap extends Activity {
 - @Override
 - protected void onCreate(Bundle savedInstanceState) {
 - super.onCreate(savedInstanceState);
 - setContentView(new SampleView(this));
 - }
 - private static class SampleView extends View {
 - private Bitmap mBitmap;
 - private Bitmap mBitmap2;
 - private Bitmap mBitmap3;
 - private Shader mShader;
 - private static void drawIntoBitmap(Bitmap bm) {
 - float x = bm.getWidth();
 - float y = bm.getHeight();
 - // 建一个有制定对象的画布
 - Canvas c = new Canvas(bm);
 - Paint p = new Paint();
 - // 主要用来消除边缘吧从效果上看 好像false的话有毛边
 - p.setAntiAlias(true);
 - p.setAlpha(0x555555);//灰色
 - c.drawCircle(x/2, y/2, x/2, p);
 - p.setAlpha(0x0000ff);//蓝色
 - p.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_OVER));
 - // 下面是字体的相关设置
 - p.setTextSize(20);
 - String familyName = "宋体";
 - Typeface font = Typeface.create(familyName,Typeface.ITALIC);
 - p.setTypeface(font);
 - p.setTextAlign(Paint.Align.CENTER);
 - Paint.FontMetrics fm = p.getFontMetrics();
 - c.drawText("我爱android", x/2, (y-fm.ascent)/2, p);
 - }
 - public SampleView(Context context) {
 - super(context);
 - setFocusable(true);
 - // 得到图像的几种方法
 - InputStream is = context.getResources().
 
openRawResource(R.drawable.app_sample_code);- mBitmap = BitmapFactory.decodeStream(is);
 - //从一幅图像抽取色值变为新的图像,一般是画笔的颜色 同下面
 
p.setColor(Color.BLUE);- mBitmapmBitmap2 = mBitmap.extractAlpha();
 - mBitmap3 = Bitmap.createBitmap(200, 200, Bitmap.Config.ALPHA_8);
 - drawIntoBitmap(mBitmap3);
 - //一种渐变效果
 - mShader = new LinearGradient(0, 0, 150, 70, new int[] {
 - Color.RED, Color.GREEN, Color.BLUE },
 - null, Shader.TileMode.MIRROR);
 - }
 - @Override protected void onDraw(Canvas canvas) {
 - canvas.drawColor(Color.LTGRAY);
 - Paint p = new Paint();
 - float y = 10;
 - p.setColor(Color.BLUE);
 - canvas.drawBitmap(mBitmap, 10, y, p);
 - y += mBitmap.getHeight() + 10;
 - canvas.drawBitmap(mBitmap2, 10, y, p);
 - y += mBitmap2.getHeight() + 10;
 - p.setShader(mShader);
 - canvas.drawBitmap(mBitmap3, 10, y, p);
 - }
 - }
 - }
 
如果把一幅图片变成一个可变图片之后,就可以在图片上打上自己的印记了,这里就不写了。这个程序主要是 怎么自己画一个图片,可以用在图片上画,也可以就如同一张白纸自己画,同时还有一个函数,可以用来提取外形的。
                网站名称:Android画图技巧应用方式分析
                
                链接URL:http://www.csdahua.cn/qtweb/news2/49502.html
            
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网