createGifFromImages method

  1. @override
Future<Uint8List?> createGifFromImages(
  1. List<XFile> imageFiles, {
  2. int fps = 1,
  3. int? width,
  4. int? height,
  5. bool forceOriginalAspectRatio = true,
  6. List<GifyTextMessage>? textMessages,
})
override

Implementation

@override
Future<Uint8List?> createGifFromImages(
  List<XFile> imageFiles, {
  int fps = 1,
  int? width,
  int? height,
  bool forceOriginalAspectRatio = true,
  List<GifyTextMessage>? textMessages,
}) async {
  final imagePathsWithType = imageFiles.map<List<String>>((file) {
    final fileType =
        file.mimeType == null ? 'unknown' : file.mimeType!.split('/').last;
    return List<String>.from([file.path, fileType]);
  }).toList();
  final gifBytes = await getGifBytesFromImages(
    imagePathsWithType,
    fps: fps,
    width: width,
    height: height,
    forceOriginalAspectRatio: forceOriginalAspectRatio,
    textMessagesJsonString: textMessages == null
        ? null
        : jsonEncode(
            textMessages
                .map<Map<String, dynamic>>(
                    (textMessage) => textMessage.asMap())
                .toList(),
          ),
  );
  return gifBytes;
}