1

我使用手机摄像头拍摄了一张照片并将其存储在变量“照片”中

Bitmap photo = (Bitmap) data.getExtras().get("data"); 

我还使用手机gps获得了经纬度

lat = location.getLatitude();
lon = location.getLongitude();

如何仅将此 gps 数据合并到图像中?

用户可以通过在相机设置中启用 GPS 标签选项来手动捕获 PS GPS 标签图像。我想确保捕获的图像是强制 GPS 标记的。

4

2 回答 2

2

你不能将它设置为位图,位图只是一个带有图像像素的字节数组。将这些坐标保存到支持元数据的文件(例如 PNG 或 JPG)后,您必须应用这些坐标

为此,您使用ExifInterface

代码类似于:

String filePath = Enviroment.getExternalStorageDirectory() + "/MyApp/photo.png";
OutputStream out = new BufferedOutputStream(new FileOutputStream(new File(filePath)));
photo.compress(Bitmap.CompressFormat.PNG, 100, out);
out.flush();
out.close();
ExifInterface exif = new ExifInterface(filePath);

// call this next setAttributes a few times to write all the GPS data to it.
exif.setAttribute(... );

// don't forget to save
exif.saveAttributes();
于 2013-09-26T09:12:28.963 回答
0

就是你要找的吗?

于 2013-09-26T09:09:20.190 回答