compressFile function

Future<CompressResult> compressFile({
  1. required String path,
  2. CompressConfig config = const CompressConfig(),
})

Compresses an image file at path.

Reads the file on the calling isolate, then delegates compression to a background Isolate via AllImageCompress.fromBytes.

Example:

import 'package:all_image_compress/all_image_compress_io.dart';

final result = await compressFile(
  path: file.path,
  config: CompressConfig(quality: 80, maxWidth: 1920),
);
await File(outputPath).writeAsBytes(result.bytes);

Implementation

Future<CompressResult> compressFile({
  required String path,
  CompressConfig config = const CompressConfig(),
}) async {
  final Uint8List bytes = await File(path).readAsBytes();
  return AllImageCompress.fromBytes(bytes: bytes, config: config);
}