Android ExifInterface rotationDegrees图旋转角度,Kotlin

Android ExifInterface rotationDegrees图旋转角度,Kotlin

Kotlin 复制代码
import android.media.ThumbnailUtils
import android.os.Bundle
import android.util.Log
import android.util.Size
import android.widget.ImageView
import androidx.appcompat.app.AppCompatActivity
import androidx.exifinterface.media.ExifInterface
import java.io.File

class MainActivity : AppCompatActivity() {
    companion object {
        const val TAG = "fly/MainActivity"
    }

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        val img1 = findViewById<ImageView>(R.id.img1)
        val img2 = findViewById<ImageView>(R.id.img2)

        val filePath = "/storage/emulated/0/data/heic/IMG_1587.HEIC"

        var t = System.currentTimeMillis()
        val bmp1 = ThumbnailUtils.createImageThumbnail(File(filePath), Size(200, 200), null)
        Log.d(TAG, "decodeFile 耗时=${System.currentTimeMillis() - t}ms")

        img1.setImageBitmap(bmp1)

        img2.setImageBitmap(bmp1)

        t = System.currentTimeMillis()
        val exifInterface = ExifInterface(filePath)
        Log.d(TAG, "rotationDegrees=${exifInterface.rotationDegrees} 耗时=${System.currentTimeMillis() - t}ms")

        val degree = exifInterface.rotationDegrees * (-1f)
        if (degree != 0f) {
            img2.rotation = degree
        }
    }
}

注意:

复制代码
val exifInterface = ExifInterface(filePath)

最终是要FileInputStream读文件,这是一个耗时IO,通常需要几十ms以上,有一定性能开销。

Android多张图片rotation旋转角度叠加/重叠堆放_android 图片无规则叠放-CSDN博客文章浏览阅读810次。《Android大图片之变换缩略图,以及对原始大图片按照指定宽、高裁剪成缩略图》在Android的ImageView加载图像资源过程中,出于性能和内存开销的需要,有时候需要把一个原始的超大图片按照一定比例等比例缩放成较小的缩略图,或者需要把原始的超大图片,裁剪成指定宽高值的较小图片,针对这种开发需求,可以使用Android SDK自身提供的工具类:ThumbnailUtils完成。Android旋转动画rotate动画,xml配置set实现_android xml 旋转动画-CSDN博客。_android 图片无规则叠放https://blog.csdn.net/zhangphil/article/details/134065191

Android ValueAnimator ImageView animate() rotation,Kotlin-CSDN博客文章浏览阅读788次,点赞7次,收藏4次。Android ValueAnimator属性动画ObjectAnimator使View颜色渐变,Kotlin。_view动画 渐变。Android ValueAnimator属性动画ObjectAnimator使View颜色渐变,Kotlin_view动画 渐变-CSDN博客。https://blog.csdn.net/zhangphil/article/details/145289647

相关推荐
COSMOS_*7 小时前
2025最新版 Android Studio安装及组件配置(SDK、JDK、Gradle)
android·ide·jdk·gitee·android studio
jian110587 小时前
android studio Profiler性能优化,查看内存泄漏
android·性能优化·android studio
建群新人小猿10 小时前
陀螺匠企业助手——组织框架图
android·java·大数据·开发语言·容器
TheNextByte110 小时前
如何将文件从Android无线传输到 iPad
android·ios·ipad
赫萝的红苹果11 小时前
实验探究并验证MySQL innoDB中的各种锁机制及作用范围
android·数据库·mysql
叶落无痕5211 小时前
Android Studio 2024.3.1 连接夜神模拟器
android·ide·android studio
玲子的猫11 小时前
安卓原生开发实现图片双指放大预览功能
android
2501_9151063212 小时前
如何在iPad上高效管理本地文件的完整指南
android·ios·小程序·uni-app·iphone·webview·ipad
似霰13 小时前
AIDL Hal 开发笔记5----实现AIDL HAL
android·framework·hal
2501_9151063213 小时前
iOS 成品包加固,在只有 IPA 的情况下,能做那些操作
android·ios·小程序·https·uni-app·iphone·webview