【发布时间】:2020-01-03 09:19:55
【问题描述】:
我正在尝试创建 pdf 并查看它。
我应用了pdf 插件来创建 pdf ,path_provider 插件用于将 pdf 保存到设备的存储和 flutter_full_pdf_viewer 用于查看pdf的插件。
我已关注create-a-pdf-in-flutter。
但是如果我尝试使用 import 'package:pdf/widgets.dart'; 导入代码中的错误,则材料元素无法正常工作 import 'package:flutter/material.dart'; 。
我做错了什么?
代码:
import 'dart:io';
import 'package:flutter/material.dart';
import 'package:pdf/pdf.dart';
import 'package:path_provider/path_provider.dart';
import 'package:pdfdemo/pages/pdf_viewer.dart';
//import 'package:pdf/widgets.dart'
变量:
final pdf = Document();
创建pdf文件页面:
return Scaffold(
appBar: AppBar(title: Text("PDF CREATE"),
actions: <Widget>[
IconButton(
icon: Icon(Icons.save),
onPressed: () => savePdfFile(),
)
],),
body: pdf.addPage(Page(
pageFormat: PdfPageFormat.a4,
build: (BuildContext context) {
return Center(
child: Text("Hello Flutter"),
);
})),
);
将 pdf 文件保存到设备的位置:
savePdfFile()async{
final dir = await getExternalStorageDirectory();
print("Directoryyyyyyyyy:${dir.path}");
final String path = "${dir.path}/example.pdf";
final file = File(path);
await file.writeAsBytes(pdf.save());
Navigator.of(context).push(
MaterialPageRoute(builder: (_) => PgfViewerPage(path: path))
);
}
【问题讨论】: