compressFileToFile function
Future<CompressResult>
compressFileToFile({
- required File inputFile,
- required File outputFile,
- CompressConfig config = const CompressConfig(),
Compresses inputFile and writes the result to outputFile.
The parent directory of outputFile must already exist.
Returns the CompressResult for inspection (e.g. compression ratio).
Example:
final result = await compressFileToFile(
inputFile: File('/photos/large.jpg'),
outputFile: File('/photos/thumb.jpg'),
config: CompressConfig(quality: 75, maxWidth: 800, maxHeight: 600),
);
print(result.summary);
Implementation
Future<CompressResult> compressFileToFile({
required File inputFile,
required File outputFile,
CompressConfig config = const CompressConfig(),
}) async {
final Uint8List inputBytes = await inputFile.readAsBytes();
final result = await AllImageCompress.fromBytes(bytes: inputBytes, config: config);
await outputFile.writeAsBytes(result.bytes, flush: true);
return result;
}