Flutter web Нужен пример того, как передать и показать изображение в сгенерированном PDF с использованием пакета PDF - PullRequest
0 голосов
/ 17 марта 2020

Я пытаюсь сгенерировать PDF в Flutter web, используя пакет https://pub.dev/packages/pdf. Все хорошо, кроме изображений, они не будут работать. Я пробовал несколько способов, но безуспешно. Поэтому мой вопрос - как передать и показать изображение в формате PDF в сети Flutter?

1 способ выброса chrome исключение Ошибка: RangeError (index): индекс вне диапазона: индекс должен быть меньше 876: 876

import 'dart:async';
import 'dart:typed_data';
import 'package:flutter/widgets.dart' as w;
import 'package:inspections/models/inspection.dart';
import 'package:intl/intl.dart';
import 'package:pdf/pdf.dart';
import 'package:pdf/widgets.dart' ;

Future<Document> generateDocument(
    PdfPageFormat format,  Uint8List  logo) async {
  final Document doc = Document(
    title: 'name',
    author: 'author',
  );
  PdfImage sample = PdfImage(doc.document, image: logo, width: 100, height: 100, alpha: true);

....

2 пути ничего не возвращает:

import 'package:flutter/widgets.dart' as w;

ByteData byteData = await rootBundle.load('assets/image.png');
  var k = byteData.buffer.asUint8List();
  var temp = await pdfImageFromImageProvider(
          pdf: doc.document,
          image: w.MemoryImage(k));
...