Flutter Web:在另一个浏览器选项卡或窗口上显示资产中的 PDF 或任何文件

Tas*_*een 2 flutter flutter-web

最近,我正在开发作品集网站,我需要在另一个选项卡上显示 PDF 格式的用户简历。由于这是一个独立的 Web 项目,我不想处理 iOS 和 Android 的 PDF 查看。

Tas*_*een 5

首先,你需要安装这个包:universal_html

flutter pub add universal_html
Run Code Online (Sandbox Code Playgroud)

将包导入到您的文件中

import 'package:universal_html/html.dart' as html;
Run Code Online (Sandbox Code Playgroud)

这是方法:

Future<void> showCV() async {

   var bytes = await rootBundle.load("assets/files/cv.pdf"); // location of your asset file

   final blob = html.Blob([bytes], 'application/pdf');
   final url = html.Url.createObjectUrlFromBlob(blob);
   html.window.open(url, "_blank");
   html.Url.revokeObjectUrl(url);
}
Run Code Online (Sandbox Code Playgroud)

瞧!