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

android ImageUtils 图片处理工具类 收集平时用到的代码段

2014-07-22 21:44 281 查看
/**

* 添加文字到图片,类似水印文字。

* @param gContext

* @param gResId

* @param gText

* @return

*/

public static Bitmap drawTextToBitmap(Context gContext, int gResId, String gText) {

Resources resources = gContext.getResources();

float scale = resources.getDisplayMetrics().density;

Bitmap bitmap = BitmapFactory.decodeResource(resources, gResId);

android.graphics.Bitmap.Config bitmapConfig = bitmap.getConfig();

// set default bitmap config if none

if (bitmapConfig == null) {

bitmapConfig = android.graphics.Bitmap.Config.ARGB_8888;

}

// resource bitmaps are imutable,

// so we need to convert it to mutable one

bitmap = bitmap.copy(bitmapConfig, true);

Canvas canvas = new Canvas(bitmap);

// new antialised Paint

Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);

// text color - #3D3D3D

paint.setColor(Color.rgb(61,61,61));

// text size in pixels

paint.setTextSize((int) (14 * scale*5));

// text shadow

paint.setShadowLayer(1f, 0f, 1f, Color.WHITE);

// draw text to the Canvas center

Rect bounds = new Rect();

paint.getTextBounds(gText, 0, gText.length(), bounds);

// int x = (bitmap.getWidth() - bounds.width()) / 2;

// int y = (bitmap.getHeight() + bounds.height()) / 2;

//draw text to the bottom

int x = (bitmap.getWidth() - bounds.width())/10*9 ;

int y = (bitmap.getHeight() + bounds.height())/10*9;

canvas.drawText(gText, x , y, paint);

return bitmap;

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