您的位置:首页 > 移动开发 > Android开发

【Android】在图片上画其他内容的方法

2016-07-03 14:42 639 查看
步骤如下:

1。创建一个位图对象,即得到想要在上面画字的图片

2。给画布对象设置第一步得到的位图。

3。在画布上绘制内容,比如:字,各种形状,位图等等,此时在画布上绘图,相当于在位图上画。

4。现在的位图对象就是上面有新内容的位图对象。随便你怎么操作了(保存,显示都可以)。

博主写个例子,从文件生成得到一个位图对象,并且在上面绘制文字,最后再用ImageView显示Bitmap的绘制结果。

package com.luoye.print2bmp;

import android.app.*;
import android.os.*;
import android.view.*;
import android.widget.*;
import android.graphics.*;

public class MainActivity extends Activity
{
/** Called when the activity is first created. */
private ImageView iv;

@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
iv=(ImageView)findViewById(R.id.iv);
Bitmap bitmap=BitmapFactory.decodeFile("/sdcard/pic.jpg")
.copy(Bitmap.Config.ARGB_8888, true);//从文件得到一个位图对象。要调用copy函数重新生成位图,不然会报错
/*Bitmap bitmap=Bitmap.createBitmap(800,600,Bitmap.Config.ARGB_8888);*/
Canvas canvas=new Canvas(bitmap);//创建一个空画布,并给画布设置位图
Paint p=new Paint();
p.setColor(0xffff0000);//设置画笔颜色
p.setAntiAlias(true);//抗锯齿
p.setTextSize(25);//设置字体大小
canvas.drawText("这是写上去的字",10,20,p);//在画布上绘制文字,即在位图上绘制文字

iv.setImageBitmap(bitmap);//给ImageView设置新的图片
}
}


效果图:




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android 位图