chromalib 0.1.1 copy "chromalib: ^0.1.1" to clipboard
chromalib: ^0.1.1 copied to clipboard

Fast, typed ICC color transforms for Dart, powered by Little CMS.

example/main.dart

import 'dart:typed_data';

import 'package:chromalib/chromalib.dart';

/// Converts premultiplied display pixels with one reusable ICC transform.
Future<void> main() async {
  await ChromaLib.initialize();
  final Uint8List source = Uint8List.fromList([
    255,
    96,
    32,
    255,
    64,
    32,
    16,
    128,
  ]);
  final IccTransform transform = IccTransform(
    sourceProfile: IccProfile.srgb,
    sourceFormat: IccPixelFormat.premultipliedRgba8,
    destinationProfile: IccProfile.adobeRgb1998,
    destinationFormat: IccPixelFormat.premultipliedRgba8,
  );
  try {
    final Uint8List converted = transform.convert(source);
    print(ChromaLib.backendVersion);
    print('Adobe RGB pixels: $converted');
  } finally {
    transform.close();
  }
}