Я использую средство просмотра PDF-файлов Syncfusion flutter. Здесь можно ли загрузить файлы PDF, пока файл будет открыт в первый раз? Чтобы в следующий раз не требовалось подключение к интернету? Если да, то как это сделать?
Загрузите PDF-файлы в первый раз с помощью программы просмотра PDF-файлов Syncfusion flutter.
Ответы (1)
Да, можно один раз загрузить PDF-файл и использовать его до закрытия приложения. В следующем примере кода показано, как игнорировать несколько загрузок PDF, когда виджет SfPdfViewer перестраивается или переключается между разными страницами.
class _MyHomePageState extends State<MyHomePage> {
final String _url = 'https://cdn.syncfusion.com/content/PDFViewer/flutter-succinctly.pdf';
Uint8List _pdfBytes;
// Downloads the PDF from the URL
void downloadPDF()
async {
final HttpClient client = HttpClient();
final HttpClientRequest request = await client.getUrl(Uri.parse(_url));
final HttpClientResponse response = await request.close();
_pdfBytes = await consolidateHttpClientResponseBytes(response);
setState(() {
});
}
@override
void initState() {
super.initState();
downloadPDF();
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home: DefaultTabController(
length: 2,
child: Scaffold(
appBar: AppBar(
bottom: TabBar(
tabs: [
Tab(icon: Icon(Icons.looks_one)),
Tab(icon: Icon(Icons.looks_two)),
],
),
title: Text('PDFVIEWER'),
),
body: TabBarView(
children: [
_pdfBytes == null ? Center(child: CircularProgressIndicator()) : SfPdfViewer.memory(
_pdfBytes),
Text('Go back to first tab'),
],
),
),
),
);
}
Примечание: я работаю в Syncfusion.
С уважением, Дилли Бабу.
person
Dillibabu Nandhagopal
schedule
01.12.2020
Спасибо за ваш отзыв, но я хочу, чтобы загруженные PDF-файлы хранились в памяти телефона и открывались оттуда в автономном режиме даже после закрытия и повторного открытия приложения. Это возможно?
- person Rifat Hossain; 02.12.2020
@RifatHossain, Да, с помощью path_provider и SfPdfViewer.File() можно открыть загруженный PDF-файл из памяти телефона. Найдите ссылку на документацию. Чтение файла из памяти телефона: flutter.dev/docs/cookbook/persistence/ Загрузка файла в SfPdfViewer: pub.dev/documentation/syncfusion_flutter_pdfviewer/latest/ — Дилли Бабу
- person Dillibabu Nandhagopal; 02.12.2020