首页 > 系统 > Android > 正文

Android图片处理实例分析

2019-12-12 05:39:37
字体:
来源:转载
供稿:网友

本文实例讲述了Android图片处理的方法。分享给大家供大家参考,具体如下:

package cn.szbw.util;import Android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Canvas;import android.graphics.Matrix;import android.graphics.Paint;public class Utils {     /***     * 加载本地图片     * @param context:主运行函数实例     * @param bitAdress:图片地址,一般指向R下的drawable目录     * @return     */    public final Bitmap CreatImage(Context context, int bitAdress) {        Bitmap bitmaptemp = null;        bitmaptemp = BitmapFactory.decodeResource(context.getResources(),bitAdress);        return bitmaptemp;    }//2.图片平均分割方法,将大图平均分割为N行N列,方便用户使用    /***     * 图片分割     * @param g     * :画布     * @param paint     *:画笔     * @param imgBit     *:图片     x     *:X轴起点坐标     * @param y     *:Y轴起点坐标     * @param w     * :单一图片的宽度     * @param h     *:单一图片的高度     * @param line     *:第几列     * @param row     * :第几行     */    public final void cuteImage(Canvas g, Paint paint, Bitmap imgBit, int x,            int y, int w, int h, int line, int row) {        g.clipRect(x, y, x + w, h + y);        g.drawBitmap(imgBit, x - line * w, y - row * h, paint);        g.restore();    }//3.图片缩放,对当前图片进行缩放处理    /***     * 图片的缩放方法     * * @param bgimage     *:源图片资源     * @param newWidth     *:缩放后宽度     * @param newHeight     *:缩放后高度     * @return     */    public Bitmap zoomImage(Bitmap bgimage, int newWidth, int newHeight) {        // 获取这个图片的宽和高        int width = bgimage.getWidth();        int height = bgimage.getHeight();        // 创建操作图片用的matrix对象        Matrix matrix = new Matrix();        // 计算缩放率,新尺寸除原始尺寸        float scaleWidth = ((float) newWidth) / width;        float scaleHeight = ((float) newHeight) / height;        // 缩放图片动作        matrix.postScale(scaleWidth, scaleHeight);        Bitmap bitmap = Bitmap.createBitmap(bgimage, 0, 0, width, height,                matrix, true);        return bitmap;    }//4.绘制带有边框的文字,一般在游戏中起文字的美化作用    /**     * 绘制带有边框的文字     * @param strMsg     * :绘制内容     * @param g     *:画布     * @param paint     *:画笔     * @param setx     *:X轴起始坐标     * @param sety     *:Y轴的起始坐标     * @param fg     *:前景色     * @param bg     * :背景色     */    public void drawText(String strMsg, Canvas g, Paint paint, int setx,            int sety, int fg, int bg) {        paint.setColor(bg);        g.drawText(strMsg, setx + 1, sety, paint);        g.drawText(strMsg, setx, sety - 1, paint);        g.drawText(strMsg, setx, sety + 1, paint);        g.drawText(strMsg, setx - 1, sety, paint);        paint.setColor(fg);        g.drawText(strMsg, setx, sety, paint);        g.restore();    }}

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android图形与图像处理技巧总结》、《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android多媒体操作技巧汇总(音频,视频,录音等)》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结

希望本文所述对大家Android程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表