-
-
Notifications
You must be signed in to change notification settings - Fork 630
Network Image
David PHAM-VAN edited this page Jun 4, 2021
·
2 revisions
In your pubspec.yaml
, use:
dependencies:
flutter:
sdk: flutter
pdf:
printing:
And create the PDF document like this:
import 'dart:typed_data';
import 'package:flutter/material.dart';
import 'package:pdf/pdf.dart';
import 'package:pdf/widgets.dart' as pw;
import 'package:printing/printing.dart';
void main() => runApp(const MyApp());
class MyApp extends StatelessWidget {
const MyApp();
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(title: const Text('Printing Demo')),
body: PdfPreview(
build: (format) => _generatePdf(format),
),
),
);
}
Future<Uint8List> _generatePdf(PdfPageFormat format) async {
final pdf = pw.Document();
final img = await networkImage(
'https://upload.wikimedia.org/wikipedia/commons/5/57/Cumulus_Clouds_over_Yellow_Prairie2.jpg');
pdf.addPage(
pw.Page(
pageFormat: format,
build: (context) {
return pw.Center(
child: pw.ClipRRect(
horizontalRadius: 10,
verticalRadius: 10,
child: pw.Image(img),
),
);
},
),
);
return pdf.save();
}
}
Copyright (C) 2020, David PHAM-VAN All rights reserved.