Coverage Summary for Class: Image_jvmKt (ui)

Class Class, % Method, % Branch, % Line, % Instruction, %
Image_jvmKt 0% (0/1) 0% (0/3) 0% (0/6) 0% (0/54)


 package ui
 
 import androidx.compose.ui.graphics.*
 import androidx.compose.ui.graphics.painter.Painter
 import androidx.compose.ui.unit.Density
 import androidx.compose.ui.unit.LayoutDirection
 import java.awt.image.BufferedImage
 import java.net.URI
 import java.nio.file.Path
 import javax.imageio.ImageIO
 
 fun URI.toImageBitmap() = ImageIO.read(toURL()).toComposeImageBitmap()
 
 fun ImageBitmap.toPngImage(path: Path): Boolean =
     toAwtImage().let { ImageIO.write(it, "png", path.toFile()) }
 
 fun Painter.toPngImage(path: Path): Boolean {
   val img = toAwtImage(Density(1f), LayoutDirection.Ltr)
   return BufferedImage(img.getWidth(null), img.getHeight(null), BufferedImage.TYPE_INT_RGB).run {
     graphics.drawImage(img, 0, 0, null)
     ImageIO.write(this, "png", path.toFile())
   }
 }