Korim: Kotlin cORoutines IMaging utilities for JVM, JS, Native and Common
Branch: master
Clone or download
Latest commit 87a8aa2 Feb 18, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
buildSrc More work Feb 10, 2019
gradle/wrapper 1.6.1 Feb 9, 2019
korim-jpeg
korim-qr cinterop + canvas for tests Feb 9, 2019
korim Support ICO writing Feb 17, 2019
.editorconfig Synchronized from korlibs, nmpp and badges Oct 14, 2018
.gitignore 1.5.0 Jan 31, 2019
.travis.yml Try to limit testing on android Jan 28, 2019
LICENSE Split JPEG into its own project and update license file with its license Oct 14, 2018
README.md Update readme Oct 14, 2018
README.md.template Synchronized from korlibs, nmpp and badges Oct 14, 2018
gradle.properties 1.6.4 Feb 16, 2019
gradlew 1.6.0 Feb 6, 2019
gradlew.bat 1.6.0 Feb 6, 2019
gradlew_linux 1.0.0-beta-3 Jan 26, 2019
gradlew_win 1.0.0-beta-3 Jan 26, 2019
gradlew_wine Synchronized from korlibs, nmpp and badges Oct 14, 2018
publish 1.0.0-beta-3 Jan 26, 2019
publish_local 1.6.1 Feb 9, 2019
settings.gradle More work Feb 10, 2019
travis_win.bat 1.6.1 Feb 9, 2019

README.md

Korim: Kotlin cORoutines IMaging utilities depending on Korio for JVM, Kotlin-JS, Android, Jtransc+Node.JS and Jtransc+Browser

Build Status Maven Version Gitter

All KOR libraries

Use with gradle:

compile "com.soywiz:korim:$korVersion"

Bitmap classes

Bitmap base class + Bitmap8 and Bitmap32. And other fancy bitmaps: BitmapIndexed as base + Bitmap1, Bitmap2, Bitmap4 Ad BitmapChannel

Image Formats

Korim provides utilities for reading and writing some image formats without any kind of additional dependency.

PNG, JPG, TGA, BMP, ICO, PSD(WIP) and DDS (DXT1, DXT2, DXT3, DXT4 and DXT5).

Native Image Formats

Korim also allows to use native image readers from your device for maximum performance for standard image formats.

Color Formats

Korim provides color formats to convert easily and fast and to perform, mixing, de/premultiplication and other operations quickly.

Vectorial Image Formats

Korim supports loading, rasterizing and drawing vectorial SVG files.

Native vectorial rendering

It provides a single interface for vector rendering so you can use a single interface and leverage JavaScript Canvas, AWT's Graphics2D, Android Canvas or any other rasterizer exposed by korim implementations. It also allows to convert shapes into SVG. Includes a feature to draw shapes with fills in contact without artifacts in a portable way by multisampling. Useful for offline rasterizers.

AWT Utilities

Korim provides AWT utilities to convert bitmaps into AWT BufferedImages, and to display them. These are just extensions so not referenced from the main code. And if you use native image loading, you can display those images as fast as possible without any conversion at all.

Native Fonts

Korim provides native font rendering. You can rasterize glyph fonts on all targets without actually including any font, using device fonts.

TTF Reading and rendering

Korim provides a pure Kotlin-Common TTF reader, and using native vectorial rendering allows you to render glyphs, texts and to get advanced font metrics.

Korio integration

Korim provides korio integration adding VfsFile.readBitmap() that allows Bitmap reading easily and faster (with native implementations) in some targets like browsers.