`

android下图片处理方法[转]

阅读更多

1.图片加载方法,方便用户加载图片

/***
* 加载本地图片
* @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
* :图片

* @param 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();

}

5.Android 图片透明度处理代码

/**
* 图片透明度处理
*
* @param sourceImg
*            原始图片
* @param number
*            透明度
* @return
*/
public static Bitmap setAlpha(Bitmap sourceImg, int number) {
int[] argb = new int[sourceImg.getWidth() * sourceImg.getHeight()];
sourceImg.getPixels(argb, 0, sourceImg.getWidth(), 0, 0,sourceImg.getWidth(), sourceImg.getHeight());// 获得图片的ARGB值
number = number * 255 / 100;
for (int i = 0; i < argb.length; i++) {
argb = (number << 24) | (argb & 0×00FFFFFF);// 修改最高2位的值
}
sourceImg = Bitmap.createBitmap(argb, sourceImg.getWidth(), sourceImg.getHeight(), Config.ARGB_8888);

return sourceImg;
}

6.图片翻转

Resources res = this.getContext().getResources();
img = BitmapFactory.decodeResource(res, R.drawable.slogo);
Matrix matrix = new Matrix();
matrix.postRotate(90);        /*翻转90度*/

int width = img.getWidth();
int height = img.getHeight();
r_img = Bitmap.createBitmap(img, 0, 0, width, height, matrix, true);

分享到:
评论

相关推荐

    android图片处理:让图片一直匀速旋转

    在Android开发中,图片处理是一项常见的任务,尤其是在创建动态效果或者用户交互时。本文将深入探讨如何实现一个功能,让图片能够一直匀速旋转。这个技术可以用于制作各种动画效果,比如加载指示器或者趣味性的用户...

    Android studio 实现图片翻转

    总之,实现“Android studio 实现图片翻转”这一功能,需要掌握Android动画系统的基础知识,理解视图动画、属性动画的原理,熟悉自定义View的绘制过程,以及如何处理用户交互。通过这些技术,可以创建出类似支付宝...

    android手势处理图片平移、缩放和旋转

    "android手势处理图片平移、缩放和旋转"这个主题涉及到的主要知识点包括Android手势检测、ImageView的扩展以及图片操作。 首先,我们要了解Android的手势检测。Android系统提供了一套GestureDetector和...

    android图片处理集合demo

    "android图片处理集合demo"是一个示例项目,集中展示了多种图片处理技术。虽然代码可能没有经过精心整理,但仍然能为开发者提供宝贵的参考。 1. 图片加载库: Android原生的Bitmap API在处理大量或大尺寸图片时...

    Android图片处理源码

    这个压缩包文件“Android图片处理源码”很可能包含了一些用于Android平台的图片处理库或者示例代码,帮助开发者更好地理解和实现图片的加载、显示、裁剪、滤镜效果、压缩等功能。下面我们将深入探讨Android图片处理...

    Android图片处理资料

    这份"Android图片处理资料"很可能是关于Android平台上的图像处理技术的深入探讨,可能包括源码分析和相关工具的使用。虽然描述中没有提供具体信息,但我们可以从标题和标签中推测出一些可能涵盖的关键知识点。 1. *...

    android图片灰度处理

    接下来,我们将深入探讨Android中实现图片灰度处理的原理与方法。 首先,理解灰度图像的基本概念至关重要。灰度图像,顾名思义,是只有灰度层次而没有颜色的图像。每个像素点的值代表一个灰度级,通常范围在0(黑色...

    android常用图片处理特效源码

    总结来说,"android常用图片处理特效源码"这个资源包是一个学习Android图片特效处理的好材料,特别是对于高斯模糊算法的实现。通过对源码的研究,开发者不仅可以掌握基本的图片处理技术,还能了解到如何优化代码以...

    Android图片处理效果

    在Android开发中,图片处理是不可或缺的一部分,尤其在创建用户界面和提高用户体验时。本教程将深入探讨如何在Android...通过动手实践,你会更深入地理解Android图片处理的各种技巧,并能自如地运用到自己的项目中。

    Android 常用图片特效处理源码.zip

    在Android开发中,图片特效处理是一项常见...总的来说,这个压缩包对于想要学习和实践Android图片特效处理的开发者来说是一份宝贵的资料,通过研究源码,开发者可以掌握图片处理的各种技术,并将其应用到自己的项目中。

    Android图片放大缩小旋转完美demo

    总结来说,这个“Android图片放大缩小旋转完美demo”涵盖了Android图片处理的核心技术,包括手势识别、Matrix变换、ViewPager的使用以及网络图片加载。通过学习和理解这个demo,开发者可以更好地掌握Android中图片的...

    全部android图片处理特效

    这个压缩包文件"全部android图片处理特效"显然包含了实现这些特效的各种代码示例或库。以下是对这些特效的详细解析: 1. **图片缩放**:Android提供了Bitmap类,可以使用其`createScaledBitmap()`方法对图片进行...

    安卓android上pdf转图片

    Android系统提供了多种方法来实现这个功能,这涉及到PDF处理库、图像处理技术和文件操作技术。下面我们将深入探讨这个主题。 1. **PDF处理库**: 在Android上,我们可以利用第三方库来处理PDF文件。例如,`PDFBox-...

    Android 3D相册图片滑动+倾斜+放大+倒影处理源码.zip

    这篇内容将深入解析《Android 3D相册图片滑动+倾斜+放大+倒影处理源码》这一项目,帮助你理解如何在Android平台上实现一个功能丰富的3D相册应用。我们将探讨涉及到的关键技术点,包括图像处理、手势检测、动画效果...

    Android图片左右旋转

    综上所述,Android图片左右旋转主要涉及到Matrix类的使用,以及对用户输入的处理。理解这些概念和技术细节,可以让我们在开发中更灵活地处理图片显示的需求。通过实践和优化,我们可以创建出流畅、用户友好的图片...

    Android代码-图片处理sdk

    图片处理sdk(just for eclipse) Note: 新的项目(for studio)转移到https://github.com/jarlen/PhotoEdit (包括jni本地源码) cn.ffmpeg gif mp4 互转 com.js.photosdk.bodywarp 图片变形 com.js.photosdk.crop ...

    android图片处理工具

    本篇将深入探讨Android图片处理工具的相关知识点,帮助开发者更好地理解和运用这些工具。 首先,Android SDK本身提供了基本的图片处理能力,例如Bitmap类,它是Android中处理图像的基础。Bitmap可以用来加载、创建...

    android图片模糊处理和图片移动

    在Android开发中,图片处理是一项常见的任务,包括图片模糊处理和图片移动功能的实现。本文将深入探讨这两个关键知识点,并提供实现方法。 首先,我们来讨论图片模糊处理。在Android中,图片模糊效果通常用于创建...

    android-opengl图片3d旋转

    Android提供了`Bitmap`类来处理位图图像,而`GLUtils.texImage2D()`方法则用于将位图数据上传到GPU作为纹理。 2. **onSurfaceChanged()**:当视图大小改变时调用,可以用来调整视口大小或更新其他与视口相关的设置...

    Android图片处理工具类

    在Android中进行base64图片处理,我们需要两个主要功能:图片转base64和base64字符串转图片。 1. 图片转base64: 这个过程涉及到读取图片文件,将其二进制数据转化为base64编码的字符串。在Java中,我们可以使用`...

Global site tag (gtag.js) - Google Analytics