Skip to content

bsteps/flutter_photon_rs

Repository files navigation

Photon For Flutter

flutter_photon_rs is dart ffi to photon library, Photon is a high-performance Rust image processing library, which compiles to WebAssembly, allowing for safe, blazing-fast image processing both natively and on the web.

Supported platforms:

  • Android
  • IOS

💻 Usage

import 'package:flutter_photon_rs/flutter_photon_rs.dart';
import 'package:image_picker/image_picker.dart';

// Use ImagePicker to get image from source and read as bytes
final _picker = ImagePicker();
final image = await _picker.getImage(
  source: ImageSource.gallery,
);

if (image != null) {
  final imageBytes = await image.readAsBytes();
  
  // returns Uint8List which you can use to store, 
  // or show on Image.memory() widget
  final bytes = await Photon.process(
    bytes: imageBytes,
    filters: [
      Monochrome.grayscale(),
      Convolution.gaussianBlur(
        radius: 20,
      ),
      Transform.flipH(),
    ],
    outputFormat: OutputFormat.Jpeg,
  );
}

🌟 Features

  • Implement Photon rust lib all features
  • Fix Exif Reading (Image Rotation) Issue
  • Make Proper README.md with Documentation
  • Publish on pub.dev
  • Add Support For IOS
  • Write Rust And Flutter Test
  • Benchmark
  • Refactor Code for readability and efficiency

About

Dart ffi to photon library, an image processing library written in rust.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •