getRandomImageFromWebAsync function

Future<UploadedImageConversionResponse> getRandomImageFromWebAsync ()

Implementation

Future<UploadedImageConversionResponse> getRandomImageFromWebAsync() async {
  Random randomGenerator = Random();
  int randomId = randomGenerator.nextInt(1000);
  String randomImageUrl =
      'https://i.picsum.photos/id/${randomId.toString()}/150/150.jpg';
  http.Response urlResponse = await http.get(randomImageUrl);
  imglib.Image editableImage = imglib.decodeImage(msg2bytes(urlResponse.body));
  Image displayableImage =
      Image.memory(imglib.encodePng(editableImage), fit: BoxFit.fitWidth);
  int imageByteSize = getEncoderCapacity(
      Uint16List.fromList(editableImage.getBytes().toList()));
  UploadedImageConversionResponse response = UploadedImageConversionResponse(
      editableImage, displayableImage, imageByteSize);
  return response;
}