android添加时间,android camera添加 时间戳

在filesave.java中做如下修改:

1添加以下两个函数:

public Bitmap createBitmap(Bitmap src, long dateTaken) {

//

String datetime = DateFormat.format("yyyy:MM:dd kk:mm:ss", dateTaken).toString();

//

int w = src.getWidth();

int h = src.getHeight();

Bitmap bmpTemp = Bitmap.createBitmap(w, h, Config.ARGB_8888);

Canvas canvas = new Canvas(bmpTemp);

Paint p = new Paint();

String fontName = "serif";

int textSize = 60;

Typeface font = Typeface.create(fontName, Typeface.NORMAL);

p.setColor(Color.BLUE);

p.setTypeface(font);

p.setTextSize(textSize);

canvas.drawBitmap(src, 0, 0, p);

canvas.drawText(datetime, 0, textSize, p);

canvas.save(Canvas.ALL_SAVE_FLAG);

canvas.restore();

return bmpTemp;

}

//

public void compressAndSaveBitmap(Bitmap rawBitmap, String mFilePath, int quality){

File saveFile= new File(mFilePath);

if (saveFile.exists()) {

saveFile.delete();

}

try {

FileOutputStream fileOutputStream = new FileOutputStream(saveFile);

if (fileOutputStream != null) {

rawBitmap.compress(Bitmap.CompressFormat.JPEG, quality, fileOutputStream);

}

fileOutputStream.flush();

fileOutputStream.close();

} catch (IOException e) {

e.printStackTrace();

}

}

2添加以下代码:

import android.graphics.Bitmap;

import android.graphics.BitmapFactory;

import android.graphics.Canvas;

import android.graphics.Color;

import android.graphics.Paint;

import android.graphics.Typeface;

import android.graphics.Bitmap.Config;

import android.text.format.DateFormat;

import android.graphics.Rect;

3在PhotoOperator的saveRequest()中做如下修改:

try {

// Write to a temporary file and rename it to the final name. This

// avoids other apps reading incomplete data.

out = new FileOutputStream(mTempFilePath);

out.write(mData);

out.close();

new File(mTempFilePath).renameTo(new File(mFilePath));

} catch (IOException e) {

Log.e(TAG, "Failed to write image", e);

} finally {

if (out != null) {

try {

out.close();

} catch (IOException e) {

Log.e(TAG, "saveRequest()", e);

}

}

}

//add for timestamp

Log.v(TAG, "mFilePath=" + mFilePath);

try {

ExifInterface exif = new ExifInterface(mFilePath);

String model = exif.getAttribute(ExifInterface.TAG_MODEL);

Bitmap bitmap = BitmapFactory.decodeFile(mFilePath, null);//

Bitmap markbitmap = createBitmap(bitmap, mDateTaken);//

compressAndSaveBitmap(markbitmap, mFilePath, 80);//

//exif.setAttribute(ExifInterface.TAG_MODEL,model);

exif.saveAttributes();

}catch(IOException ex){

Log.e(TAG, " IOException"  );

}

// add end

mMimeType = Storage.generateMimetype(mTitle, mTempPictureType);

mMpoType = Storage.generateMpoType(mTempPictureType);

saveImageToDatabase(this);

if (LOG) {

Log.v(TAG, "saveRequest() mTempJpegRotation=" + mTempJpegRotation

+ ", mOrientation=" + mOrientation);

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值