zoukankan      html  css  js  c++  java
  • 从零開始学android<Bitmap图形组件.四十七.>

    android.graphics.Bitmap(位图)是Android手机中专门提供的用于操作图片资源的操作类,使用此类能够直接从资源文件之中进行图片资源的读取。而且对这些图片进行一些简单的改动。

    经常使用的方法
    1
    public static Bitmap createBitmap (Bitmap src)
    普通
    复制一个Bitmap
    2
    public static Bitmap createBitmap(Bitmap source, int x, int y, int width, int height, Matrix m, boolean filter)
    普通
    对一个Bitmap进行剪切
    3
    public final int getHeight()
    普通
    取得图像的高
    4
    public final int getWidth()
    普通
    取得图像的宽
    5
    public static Bitmap createScaledBitmap(Bitmap src, int dstWidth, int dstHeight, boolean filter)
    普通
    创建一个指定大小的Bitmap

    接下来用简单的样例来进行说明

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        tools:context=".MainActivity" >
    
        <com.example.bitmap1.MyView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">
    	</com.example.bitmap1.MyView>
    
    </RelativeLayout>
    


    主程序

    package com.example.bitmap1;
    
    import android.os.Bundle;
    import android.app.Activity;
    
    public class MainActivity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
      
        }
        
    }
    

    MyView中定义的bitmap


    package com.example.bitmap1;
                  
    import android.content.Context;
    import android.graphics.Bitmap;
    import android.graphics.BitmapFactory;
    import android.graphics.Canvas;
    import android.graphics.Color;
    import android.graphics.Paint;
    import android.util.AttributeSet;
    import android.view.View;
    
    public class MyView extends View {
    
    	public MyView(Context context, AttributeSet attrs) {
    		super(context, attrs);
    		// TODO Auto-generated constructor stub
    	}
    
    	@Override
    	protected void onDraw(Canvas canvas) {
    		// TODO Auto-generated method stub
    //		获取图片文件
    		Bitmap bitmap = BitmapFactory.decodeResource(super.getResources(),
    				R.drawable.a4);
    //		设置背景画布颜色
    		canvas.drawColor(Color.WHITE);
    //		初始化画笔
    		Paint paint=new Paint();
    //		设置边缘羽化
    		paint.setAntiAlias(true);
    //		绘制图片
    		canvas.drawBitmap(bitmap, 0, 0,paint );
    //		设置画笔颜色
    		paint.setColor(Color.BLUE);
    //		设置字体尺寸
    		paint.setTextSize(20);
    //		绘制文字
    		canvas.drawText("我的头像", 10, bitmap.getHeight()+20, paint);
    	}
    }
    


    尽管有点丑。可是绘制的还不错。对bitmap的操作还有很多,大家能够參照api自行进行学习,图形的绘制在游戏和APP引导用的比較多


    下节预报:Mediaplayer自带播放器

  • 相关阅读:
    联机交易场景持续拓展,巨杉数据库中标吉林省农信
    巨杉数据库与深度操作系统合作共建基础软件技术生态
    SequoiaDB报告创建线程失败的解决办法
    巨杉数据库中标张家口银行、保定银行,华北地区布局再升级
    扩展国产数据库生态,巨杉技术社区与恩墨学院建立全面合作
    巨杉Tech | SequoiaDB虚机镜像正式上线
    跨越数据库发展鸿沟,谈分布式数据库技术趋势
    喜讯 | 国际智慧城市大会巨杉喜获两项大奖
    巨杉数据库再夺“广州独角兽”称号
    巨杉Tech | 使用 SequoiaDB 分布式数据库搭建JIRA流程管理系统
  • 原文地址:https://www.cnblogs.com/claireyuancy/p/6852574.html
Copyright © 2011-2022 走看看