Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Kotlin Compose桌面中加载图像?_Kotlin_Desktop Application_Desktop_Android Jetpack Compose - Fatal编程技术网

如何在Kotlin Compose桌面中加载图像?

如何在Kotlin Compose桌面中加载图像?,kotlin,desktop-application,desktop,android-jetpack-compose,Kotlin,Desktop Application,Desktop,Android Jetpack Compose,在桌面上使用Kotlin compose时如何从硬盘加载图像?您可以使用此功能获取ImageAsset fun imageFromFile(file: File): ImageAsset { return org.jetbrains.skija.Image.makeFromEncoded(file.readBytes()).asImageAsset() } 完整示例: import androidx.compose.desktop.Window import androidx.comp

在桌面上使用Kotlin compose时如何从硬盘加载图像?

您可以使用此功能获取ImageAsset

fun imageFromFile(file: File): ImageAsset {
    return org.jetbrains.skija.Image.makeFromEncoded(file.readBytes()).asImageAsset()
}
完整示例:

import androidx.compose.desktop.Window
import androidx.compose.foundation.Image
import androidx.compose.runtime.remember
import androidx.compose.ui.graphics.ImageAsset
import androidx.compose.ui.graphics.asImageAsset
import java.io.File

fun main() = Window {
   val file = File("D:\\images\\my_image.PNG")
   val image = remember { imageFromFile(file) }

   Image(asset = image)
}

fun imageFromFile(file: File): ImageAsset {
   return org.jetbrains.skija.Image.makeFromEncoded(file.readBytes()).asImageAsset()
}
这对我有用

 Image(bitmap = imageFromResource("image.png"),
       "image",
 )
contentDescription
是必需的,但可以是您想要的任何内容。还可以添加修改器,例如

val imageModifier = Modifier
   .height(240.dp)
   .fillMaxWidth()
   .clip(RoundedCornerShape(12.dp))

Image(bitmap = imageFromResource("header.png"),
      "image",
      imageModifier,
      contentScale = ContentScale.Fit
    )

我想知道如何从url加载。。。