123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 |
- // import 'package:flutter/material.dart';
- // import 'package:flutter_pdfview/flutter_pdfview.dart';
- // import 'package:permission_handler/permission_handler.dart';
- // import 'package:open_file/open_file.dart';
- // import 'package:path_provider/path_provider.dart';
- // import 'dart:io';
- // class PdfViewerPage extends StatefulWidget {
- // final String filePath;
- // final String fileName;
- // const PdfViewerPage(
- // {Key? key, required this.filePath, required this.fileName})
- // : super(key: key);
- // @override
- // _PdfViewerPageState createState() => _PdfViewerPageState();
- // }
- // class _PdfViewerPageState extends State<PdfViewerPage> {
- // late PDFViewController _pdfViewController;
- // int? pages;
- // int? currentPage;
- // bool isReady = false;
- // String errorMessage = '';
- // @override
- // Widget build(BuildContext context) {
- // return Scaffold(
- // appBar: AppBar(
- // title: const Text("Visualizador de PDF"),
- // actions: [
- // IconButton(
- // icon: Icon(Icons.download),
- // onPressed: _downloadPdf,
- // ),
- // ],
- // ),
- // body: Stack(
- // children: <Widget>[
- // PDFView(
- // filePath: widget.filePath,
- // enableSwipe: true,
- // swipeHorizontal: true,
- // autoSpacing: false,
- // pageFling: false,
- // onRender: (_pages) {
- // setState(() {
- // pages = _pages;
- // isReady = true;
- // });
- // },
- // onError: (error) {
- // setState(() {
- // errorMessage = error.toString();
- // });
- // print(error.toString());
- // },
- // onPageError: (page, error) {
- // setState(() {
- // errorMessage = '$page: ${error.toString()}';
- // });
- // print('$page: ${error.toString()}');
- // },
- // onViewCreated: (PDFViewController pdfViewController) {
- // _pdfViewController = pdfViewController;
- // },
- // onPageChanged: (int? page, int? total) {
- // print('page change: $page/$total');
- // setState(() {
- // currentPage = page;
- // });
- // },
- // ),
- // errorMessage.isEmpty
- // ? !isReady
- // ? Center(
- // child: CircularProgressIndicator(),
- // )
- // : Container()
- // : Center(
- // child: Text(errorMessage),
- // )
- // ],
- // ),
- // );
- // }
- // Future<void> _downloadPdf() async {
- // try {
- // if (await Permission.storage.request().isGranted) {
- // final directory = await getExternalStorageDirectory();
- // if (directory != null) {
- // final filePath = '${directory.path}/${widget.fileName}';
- // final file = File(filePath);
- // await file.writeAsBytes(await File(widget.filePath).readAsBytes());
- // ScaffoldMessenger.of(context).showSnackBar(
- // SnackBar(content: Text('Archivo guardado en $filePath')),
- // );
- // OpenFile.open(filePath);
- // }
- // } else {
- // ScaffoldMessenger.of(context).showSnackBar(
- // SnackBar(content: Text('Permisos de almacenamiento denegados')),
- // );
- // }
- // } catch (e) {
- // ScaffoldMessenger.of(context).showSnackBar(
- // SnackBar(content: Text('Error al descargar el archivo: $e')),
- // );
- // }
- // }
- // }
|