import 'package:fis_ui/index.dart'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:vitalapp/architecture/storage/file_storage.dart'; import 'package:vitalapp/pages/report_preview/controller.dart'; import 'package:fis_lib_pdf/pdf_render_container.dart'; import 'package:fis_lib_pdf/ultils/pdf_access_type.dart'; import 'package:fis_lib_pdf/ultils/pdf381_wrapper/pdf381_preview_ext.dart'; // ///报告预览页面 // class ReportPreviewPage extends GetView { // const ReportPreviewPage({Key? key}) : super(key: key); // @override // Widget build(BuildContext context) { // return Obx(() { // if (controller.state.isLoaded) { // List children = ReportPreviewController.imageOrFileUrls // .map( // (e) => FContainer( // child: FImage.network( // e, // fit: BoxFit.fitWidth, // ), // ), // ) // .toList(); // return LayoutBuilder( // builder: (BuildContext context, BoxConstraints constraints) { // print( // '${MediaQuery.of(context).size.height} ,, ${constraints.maxHeight}'); // return InteractiveViewer( // constrained: false, // minScale: 0.5, // child: FContainer( // width: constraints.maxWidth, // child: FColumn( // mainAxisAlignment: MainAxisAlignment.center, // children: children, // ), // ), // ); // }, // ); // // return FStack( // // children: [ // // FPDFRenderContainer( // // pdfTypeEnum: ReportPreviewController.pdfType, // // demoMode: false, // // pdfAccessTypeEnum: PDFAccessTypeEnum.preview, // // fileName: _generateReaportFileName(), // // pdfExporter: TextMediaFileExporterForShell.exportFile, // // cacheGet: controller.fileStorage.read, // // cacheSave: controller.fileStorage.save, // // fromEditor: ReportPreviewController.isFromEditor, // // webSideShare: controller.shareReport, // // imageOrFileUrls: ReportPreviewController.imageOrFileUrls, // // onClose: controller.onPDFClose, // // customAction: [], // // ), // // ], // // ); // } else { // return FSizedBox(); // } // }); // } // ///获取报告名称 // String _generateReaportFileName() { // return controller.state.reportName; // } // } ///桌面端布局 class ReportPreviewPage extends GetView { @override Widget build(BuildContext context) { return Obx(() { if (controller.state.isLoaded) { return FStack( children: [ FPDFRenderContainer( pdfTypeEnum: ReportPreviewController.pdfType, demoMode: false, pdfAccessTypeEnum: PDFAccessTypeEnum.preview, fileName: _generateReaportFileName(), pdfExporter: TextMediaFileExporterForShell.exportFile, cacheGet: (a) async { return null; }, cacheSave: (a, b) async { return false; }, fromEditor: ReportPreviewController.isFromEditor, webSideShare: controller.shareReport, imageOrFileUrls: ReportPreviewController.imageOrFileUrls, onClose: controller.onPDFClose, customAction: [ SelfPdfPreviewAction( content: '关闭', icon: Icon(Icons.close), onPressed: (context, build, pageFormat) { Get.back(); }, ), ], ), ], ); } else { return FSizedBox(); } }); } ///获取报告名称 String _generateReaportFileName() { return controller.state.reportName; } }