Как использовать методы drawBox, DrawEllipse или DrawLine в библиотеке pdf Dart / Flutter

#flutter #dart #pdf #graphics #drawing

Вопрос:

Я хочу создавать PDF-файлы, включая рисованную графику, в приложении Flutter. Конечно, с помощью предоставленной библиотеки pdf довольно просто показать предварительный просмотр pdf, содержащий, например, две строки текста, но я хочу иметь возможность вставить некоторые графики, которые я хочу нарисовать сам, так как мне нужно нарисовать (самому)несколько очень нетрадиционных графиков. Для этого мне нужно уметь рисовать в виджете pdf (некоторые линии, кривые, точки нескольких цветов и т. Д.). По состоянию на данный момент мне не удалось даже нарисовать точку !!!, библиотека pdf flutter dart описывает десятки методов, но не показывает ни одного примера, на самом деле это жалко. Есть ли кто-нибудь, кто мог бы помочь мне «нарисовать» графику в объекте PDF Dart Flutter. Библиотека PdfLibrary включает класс PdfGraphics, в котором должны быть методы, которые я безуспешно пытаюсь использовать !!

Большое спасибо заранее

Пожалуйста, найдите мой код :

 import 'package:pdf/pdf.dart';
import 'package:pdf/widgets.dart' as pw;
import 'package:printing/printing.dart';

void main() => runApp(const MyApp('Ceci est mon premier PDF'));

class MyApp extends StatelessWidget {
  const MyApp(this.title);

  final String title;

  @override
  Widget build(BuildContext context) {

    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(title: Text(title)),
        body: PdfPreview(
          build: (format) => _generatePdf(format, title),
        ),
      ),
    );
  }

  Future<Uint8List> _generatePdf(PdfPageFormat format, String title) async {
    final pdf = pw.Document();

    pdf.addPage(
      pw.Page(
        pageFormat: format,
        build: (context) {
          return pw.Center(
            child: pw.Column (
              children: [
                pw.Text(title),
                pw.Text(title),
                //pw.drawBox(10,10,100,100),     <---- if i remove the comment the app 
                                                       crashes saying "Method not found" 
                                                       otherwise i have a PDF generated with two 
                                                       lines of text, and i want that just under a 
                                                       self drawn graphic could be displayed 

              ],
            ),
          );//pw.Text(title),

        },
      ),
    );

    return pdf.save();
  }
}
 

Комментарии:

1. Ты когда-нибудь понимал это?