android - 从图像中删除或更新 exif 缩略图

标签 android exif

有没有办法从图像中删除 exif 缩略图?

我正在我的应用程序中裁剪图像并使用 sanselan 库无损复制所有 exif 数据。之后,我相应地更新宽度/高度/旋转。

我找不到任何方法来更新或删除 exif 缩略图,有什么办法吗?

最佳答案

我有类似的exif数据问题

private void removeThumbnails(ContentResolver contentResolver, long photoId) {
        try {
            Cursor thumbnails = contentResolver.query(
                    MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI, null, MediaStore.Images.Thumbnails.IMAGE_ID
                            + "=?", new String[]{String.valueOf(photoId)}, null);
            if (thumbnails != null) {
                for (thumbnails.moveToFirst(); !thumbnails.isAfterLast() && !thumbnails.isBeforeFirst(); thumbnails.moveToNext()) {

                    long thumbnailId = thumbnails.getLong(thumbnails.getColumnIndex(MediaStore.Images.Thumbnails._ID));
                    String path = thumbnails.getString(thumbnails.getColumnIndex(MediaStore.Images.Thumbnails.DATA));
                    File file = new File(path);
                    if (file.delete()) {
                        contentResolver.delete(MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI, MediaStore.Images.Thumbnails._ID + "=?",
                                new String[]{String.valueOf(thumbnailId)});
                    }
                }
                thumbnails.close();
            }
        } catch (Exception e) {
        }
    }

所以我先去掉了它的缩略图,然后对图像进行了操作

所以你可以尝试删除缩略图并尝试在之后裁剪它

关于android - 从图像中删除或更新 exif 缩略图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38040436/

相关文章:

android - 如何在 onContextItemSelected() 中检索 ID

ubuntu - 如何在ubuntu中根据文件名修改exif

node.js - 在使用 node-gm 保存图像的 exif 方向时调整图像大小

iOS Swift + Alamofire 上传带exif数据的照片

java - JPEGMetadata 无法解析为类型

c++ - 如何从 jpeg 图像中读取嵌入缩略图?

android - 在后台从firebase数据库读取数据

android - CyanogenMod 的签名 key

java - 将文本设置为 switch 语句内的编辑文本时出错

android - 如何在 OpenCV Android 中创建和显示直方图?