/**
* 给一张Bitmap添加水印文字。
*
* @param src 源图片
* @param content 水印文本
* @param textSize 水印字体大小 ,单位pix。
* @param color 水印字体颜色。
* @param recycle 是否回收
* @return 已经添加水印后的Bitmap。
*/
public static Bitmap addTextWatermark(Bitmap src, String content, int textSize, int color, boolean recycle) {
if (isEmptyBitmap(src) || content == null)
return null;
Bitmap ret = src.copy(src.getConfig(), true);
Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);
Canvas canvas = new Canvas(ret);
paint.setColor(color);
paint.setTextSize(textSize);
Rect bounds = new Rect();
paint.getTextBounds(content, 0, content.length(), bounds);
int x = (ret.getWidth() - bounds.width()) / 2;
int y = (ret.getHeight() + bounds.height()) / 2;
canvas.drawText(content, x, y, paint);
if (recycle && !src.isRecycled())
src.recycle();
return ret;
}
/**
* Bitmap对象是否为空。
*/
public static boolean isEmptyBitmap(Bitmap src) {
return src == null || src.getWidth() == 0 || src.getHeight() == 0;
}