@@ -5,10 +5,12 @@ import kool.lib.toByteArray
5
5
import kool.pos
6
6
import org.lwjgl.BufferUtils
7
7
import java.awt.image.BufferedImage
8
+ import java.io.File
8
9
import java.net.URI
9
10
import java.nio.ByteBuffer
10
11
import java.nio.file.Path
11
12
import java.nio.file.Paths
13
+ import javax.imageio.ImageIO
12
14
13
15
infix fun Int.has (b : Int ) = (this and b) != 0
14
16
infix fun Int.hasnt (b : Int ) = (this and b) == 0
@@ -35,12 +37,20 @@ operator fun Array<dx.Format>.get(index: Format): dx.Format =
35
37
get(index.i - Format .FIRST .i)
36
38
37
39
fun BufferedImage.flipY () {
38
- lateinit var scanline1: Any
39
- lateinit var scanline2: Any
40
+ var scanline1: Any? = null
41
+ var scanline2: Any? = null
40
42
for (i in 0 until height / 2 ) {
41
43
scanline1 = raster.getDataElements(0 , i, width, 1 , scanline1)
42
44
scanline2 = raster.getDataElements(0 , height - i - 1 , width, 1 , scanline2)
43
45
raster.setDataElements(0 , i, width, 1 , scanline2)
44
46
raster.setDataElements(0 , height - i - 1 , width, 1 , scanline1)
45
47
}
46
- }
48
+ }
49
+
50
+ // fun main() {
51
+ // val file = File("C:\\Users\\elect\\Pictures\\1.png")
52
+ // println(file.exists() && file.canRead())
53
+ // val image = ImageIO.read(file)
54
+ // image.flipY()
55
+ // ImageIO.write(image, "png", File("flipped.png"))
56
+ // }
0 commit comments