shareImages static method

Future<bool> shareImages(
  1. UPdfController controller, {
  2. List<int>? pages,
  3. double dpi = 150,
})

Implementation

static Future<bool> shareImages(UPdfController controller, {List<int>? pages, double dpi = 150}) async {
  final List<Uint8List> images = await pageImages(controller, pages: pages, dpi: dpi);
  if (images.isEmpty) return false;
  if (images.length == 1) {
    await UShare.bytes(bytes: images.first, fileName: "page.png", mimeType: "image/png");
    return true;
  }
  if (kIsWeb) return false;
  final Directory directory = await getTemporaryDirectory();
  final List<String> paths = <String>[];
  for (int i = 0; i < images.length; i++) {
    final File file = File("${directory.path}${Platform.pathSeparator}u_doc_page_${i + 1}.png");
    await file.writeAsBytes(images[i], flush: true);
    paths.add(file.path);
  }
  await UShare.files(paths: paths);
  return true;
}