fast_image_editor 1.0.0 copy "fast_image_editor: ^1.0.0" to clipboard
fast_image_editor: ^1.0.0 copied to clipboard

Native C image editing for Flutter. Blur, sepia, saturation, brightness, contrast, sharpen, grayscale with region-based effects via FFI.

fast_image_editor #

Native C image editing for Flutter. Blur, sepia, saturation, brightness, contrast, sharpen, grayscale — all with region-based effects via Dart FFI.

Features #

  • 7 image filters: blur, sepia, saturation, brightness, contrast, sharpen, grayscale
  • Region-based effects: apply filters to rectangular or circular areas
  • Bicubic resize: high-quality image resizing via flutter_bicubic_resize
  • Native performance: all processing in C via FFI — no Dart pixel loops
  • Sync & async: every operation has a sync and Isolate.run async variant
  • Format support: JPEG and PNG with automatic detection

Installation #

dependencies:
  fast_image_editor: ^1.0.0

Quick Start #

import 'package:fast_image_editor/fast_image_editor.dart';

// Blur entire image
final blurred = FastImageEditor.blur(bytes: imageBytes, radius: 15);

// Sepia on top 30% and bottom 30%
final sepia = FastImageEditor.sepia(
  bytes: imageBytes,
  intensity: 0.8,
  region: EditRegion(top: 0.3, bottom: 0.3),
);

// Resize with bicubic interpolation
final resized = FastImageEditor.resize(
  bytes: imageBytes,
  outputWidth: 800,
  outputHeight: 600,
);

// Async variant (runs in isolate)
final result = await FastImageEditor.blurAsync(bytes: imageBytes, radius: 10);

API #

Filters #

Method Parameters Description
blur radius (1+) Box blur, 3 passes for Gaussian approximation
sepia intensity (0.0-1.0) Sepia tone filter
saturation factor (0.0=gray, 1.0=original, 2.0=double) Color saturation
brightness factor (-1.0 to 1.0) Brightness adjustment
contrast factor (0.0-2.0, 1.0=original) Contrast adjustment
sharpen amount (0.0-5.0), radius (1-10) Unsharp mask
grayscale Luminance: 0.2126R + 0.7152G + 0.0722B

Every filter has an async variant (e.g., blurAsync, sepiaAsync).

Resize #

Method Parameters Description
resize outputWidth, outputHeight Bicubic resize with auto format detection

Optional: filter, edgeMode, crop, cropAnchor, cropAspectRatio, quality, compressionLevel.

Region-Based Effects #

// Blur top 30% only
FastImageEditor.blur(
  bytes: imageBytes,
  radius: 20,
  region: EditRegion(top: 0.3),
);

// Grayscale left half
FastImageEditor.grayscale(
  bytes: imageBytes,
  region: EditRegion(left: 0.5),
);

// Sepia on edges (top 20% + bottom 20% + left 10% + right 10%)
FastImageEditor.sepia(
  bytes: imageBytes,
  region: EditRegion(top: 0.2, bottom: 0.2, left: 0.1, right: 0.1),
);

// Radial blur — circle in center
FastImageEditor.blur(
  bytes: imageBytes,
  radius: 20,
  radialRegion: RadialRegion(centerX: 0.0, centerY: 0.0, radius: 0.3),
);

Format Detection #

final format = FastImageEditor.detectFormat(bytes);
// Returns ImageFormat.jpeg, ImageFormat.png, or null

Common Parameters #

Parameter Default Description
bytes required JPEG or PNG image data
region null (full image) Area to apply effect
quality 90 JPEG output quality (1-100). Ignored for PNG.

Platform Support #

Platform Supported
Android
iOS

License #

MIT License. See LICENSE.

0
likes
150
points
--
downloads

Documentation

API reference

Publisher

verified publisherravenlab.tech

Native C image editing for Flutter. Blur, sepia, saturation, brightness, contrast, sharpen, grayscale with region-based effects via FFI.

Repository (GitHub)
View/report issues

Topics

#image #image-processing #image-editor #filter #blur

License

MIT (license)

Dependencies

ffi, flutter, flutter_bicubic_resize

More

Packages that depend on fast_image_editor

Packages that implement fast_image_editor