Skip to content

First Release

Choose a tag to compare

@W-Mai W-Mai released this 05 Feb 12:04
403868b

ICU

Image Converter Ultra

Introduction

The Image Converter Ultra (ICU) is a software that converts images from one format to another. It is designed to be a
versatile tool that can handle a wide range of image formats and convert them to other formats. The ICU is designed to
be a standalone application that can be used on any platform that supports the necessary dependencies. The ICU is
written in RUST.

Features

  • Supports a wide range of image formats
  • Supports LVGL binary format

How to use

use icu_lib::endecoder::{common, lvgl_v9};
use icu_lib::midata::MiData;
use icu_lib::EncoderParams;
use std::fs;

fn main() {
    const DATA: &[u8] = include_bytes!("../res/img_0.png");

    // Decode the image data and automatically detect the format
    let mid = MiData::decode_from::<common::AutoDectect>(Vec::from(DATA));

    // Encode the image data to the LVGL binary format with ARGB8888 color format
    let data = mid.encode_into::<lvgl_v9::ColorFormatARGB8888>(
        EncoderParams {
            stride_align: 256,
            dither: false,
        });

    fs::write("img_0.bin", data).expect("Unable to write file");
}

What's Changed

  • 🐛(lvgl_v9): fix IA1/2/4/8 color convert minor color error problem by @W-Mai in #1
  • ✨(lvgl_v9): performance improvement and optimization by @W-Mai in #2

New Contributors

  • @W-Mai made their first contribution in #1

Full Changelog: https://github.com/W-Mai/icu/commits/v0.1.0