- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
Camera.Parameters
中的
setRotation 方法
并不适用于所有设备。有人建议手动更改EXIF
信息来解决问题。你能给我一个简短的例子,说明如何使用 ExifInterface
设置 exif
信息,从而将图像方向设置为纵向吗?
private int savePicture(byte[] data)
{
File pictureFile = getOutputMediaFile();
if (pictureFile == null)
return FILE_CREATION_ERROR;
try {
FileOutputStream fos = new FileOutputStream(pictureFile);
fos.write(data);
fos.close();
} catch (FileNotFoundException e) {
return FILE_NOT_FOUND;
} catch (IOException e) {
return ACCESSING_FILE_ERROR;
}
return OKAY;
}
我试过这个:
try {
ExifInterface exifi = new ExifInterface(pictureFile.getAbsolutePath());
exifi.setAttribute(ExifInterface.TAG_ORIENTATION, String.valueOf(ExifInterface.ORIENTATION_ROTATE_90));
exifi.saveAttributes();
} catch (IOException e) {
Log.e(TAG, "Exif error");
}
但是当我可视化来自 android 画廊的图片时,没有任何变化。
最佳答案
对于那些真正想要将这些 EXIF 信息写出来的人,这里有一些代码:
ExifInterface exifInterface = new ExifInterface(someFile.getPath());
exifInterface.setAttribute(ExifInterface.TAG_ORIENTATION,
String.valueOf(orientation));
exifInterface.saveAttributes();
而 orientation
是标准方向之一,即 ExifInterface.ORIENTATION_ROTATE_{90,180,270}
。
关于android - 使用 ExifInterface 设置图像方向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19753912/
我的应用程序拍摄肖像照片。 在画廊里我看到了 但是当保存到我的服务器时,我看到它是横向的。 我检查了我的图像文件并得到了 ORIENTATION_ROTATE_90 这是什么意思? 我尝试将其设置为O
我用过ExifInterface在 Android 应用程序中用于获取图像的相机方向。我的代码完美适用于 Build.VERSION.SDK_INT = 24) {
我使用这段代码来获取有关 sdcard 中图像的信息, File file = (File) iterator.next(); ExifInterface ex
我正在尝试从画廊的图像中提取 Exif 数据,如下所示: @Override protected void onActivityResult(int requestCode, int resultCo
我想获取位图的方向。我使用这段代码: ExifInterface ei = new ExifInterface(photoPath); int orientation = ei.getAttribut
下面是我的代码- try { InputStream inputStream = getAssets().open("thumbnail.jpg"); exifInterface = new
当我将 picasso 从 2.5.2 升级到 2.71828 并执行 gradle sync 时,我看到了一个exif接口(interface)错误: 错误: Failed to resolve:
支持库版本 25.1.0 添加了一个新功能 ExifInterface,它向后移植了添加到 Android 7.1 中的 ExifInterface 的功能。 但是如何在不提供默认值的情况下检查特定文
我需要弄清楚如何从位图中获取方向。事情是 - 图像并不总是出现在设备上,所以我不能使用 ExifInterface 来获取方向信息。不知何故,它总是横向显示位图,长度和宽度属性对我帮助不大。 有谁知道
在尝试使用文件路径初始化 exif 接口(interface)实例时,我无法找出 ExifInterface 构造函数抛出的异常。 已更新请按要求查看下面的详细代码。 文件下载功能 public vo
Camera.Parameters 中的 setRotation 方法 并不适用于所有设备。有人建议手动更改EXIF信息来解决问题。你能给我一个简短的例子,说明如何使用 ExifInterface 设
我正在尝试将经纬度和其他数据写入自定义相机应用程序中 jpeg 的 Exif header 。通常,android 会自动使用光圈、ISO、快门速度等数据填充 header 。但是,当我手动添加创建一
我的问题是,在某些设备上,一些从图库中选取的图像在 ImageView 中旋转。我找到了很多使用ExifInterface来解决这个问题的资料,所以我尝试使用它。但是当我尝试使用图像路径创建 Exif
我正在尝试获取图像的方向(来自图库),但 ExifInterface 始终返回 0。这是代码: int orientation = exif.getAttributeInt(ExifInterface
我最近添加了 implementation 'com.google.android.play:core:1.6.4'作为我的 android 项目中的依赖项,现在 Intellij 提示 Progra
我一直在将图像上传到 FirebaseStorage,但在显示它们时,它们通常是错误的。我发现了可以确定图像方向并在必要时旋转和翻转图像的 ExifInterface。 在我的手机上从图库区域选择图像
我正在开发一个应用程序。我得到时间、日期、经度和纬度。 所有信息获取成功。 现在我想格式化从 ExifInterface.TAG_DATETIME 获得的日期和时间。 我该怎么做? 主 Activit
我在相机的 onActivityResult 上通过 bundle 传递位图。 Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
我正在尝试使用 ExifInterface 更改 exif 标签。我使用 setAttribute() 并调用 saveAttributes()。标签暂时保存,下次旧值还在,没有更新.........
我正在尝试检查位图的方向并在需要时翻转它,但在应用代码时出现错误。这是我尝试使用 ExifInterface 翻转图像时的代码: @RequiresApi(api = Build.VERSION_CO
我是一名优秀的程序员,十分优秀!