Prism Flutter π
Flutter extensions for the Prism color manipulation library.
Seamlessly convert between Ray and Flutter Color objects with intuitive extension methods.
Resources
Features
- π Seamless conversion: Extensions for both
RayβColorandColorβRay - π¨ Perfect fidelity: Preserves all ARGB color information
- β‘ Zero overhead: Direct value conversions with no performance cost
- π§ Enhanced manipulation: Access Ray's powerful color operations from Flutter Colors
- π― Type safe: Comprehensive API with proper error handling
Installation
Add both packages to your pubspec.yaml:
dependencies:
prism: ^1.0.0
prism_flutter: ^1.0.0
Usage
Ray to Flutter Color
import 'package:prism_flutter/prism_flutter.dart';
// Convert Ray to Flutter Color
final ray = Ray.fromHex('#FF0000');
final color = ray.toColor();
// Convert with specific opacity
final semiTransparent = ray.toColorWithOpacity(0.5);
Flutter Color to Ray
import 'package:flutter/material.dart';
import 'package:prism_flutter/prism_flutter.dart';
// Convert Flutter Color to Ray
final color = Colors.red;
final ray = color.toRay();
Enhanced Color Manipulation
// Chain Ray operations on Flutter Colors
final result = Colors.red
.toRay()
.withOpacity(0.8)
.lerp(Colors.blue.toRay(), 0.3)
.inverse
.toColor();
// Use Ray analysis methods
final luminance = Colors.grey.toRay().computeLuminance();
final bestContrast = Colors.grey.toRay().maxContrast(
Colors.black.toRay(),
Colors.white.toRay(),
);
Perfect Round-Trip Conversions
// Ray β Color β Ray maintains perfect fidelity
final originalRay = Ray.fromHex('#7F123456');
final color = originalRay.toColor();
final backToRay = color.toRay();
assert(backToRay == originalRay); // β
Always true
// Color β Ray β Color maintains perfect fidelity
const originalColor = Color(0x7F123456);
final ray = originalColor.toRay();
final backToColor = ray.toColor();
assert(backToColor == originalColor); // β
Always true
API Reference
Ray Extensions
toColor()- Convert Ray to Flutter ColortoColorWithOpacity(double opacity)- Convert Ray to Flutter Color with specific opacity
Flutter Color Extensions
toRay()- Convert Flutter Color to Ray
All conversions preserve complete ARGB color information with perfect fidelity.
Related Packages
- prism - The core color manipulation library
License
MIT License Β© 2025 Jimmy Forrester-Fellowes - see LICENSE file for details.
Libraries
- prism_flutter
- Flutter extensions for the Prism color manipulation library.