cpdf_reader_widget_example.dart 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. // Copyright © 2014-2024 PDF Technologies, Inc. All Rights Reserved.
  2. //
  3. // THIS SOURCE CODE AND ANY ACCOMPANYING DOCUMENTATION ARE PROTECTED BY INTERNATIONAL COPYRIGHT LAW
  4. // AND MAY NOT BE RESOLD OR REDISTRIBUTED. USAGE IS BOUND TO THE ComPDFKit LICENSE AGREEMENT.
  5. // UNAUTHORIZED REPRODUCTION OR DISTRIBUTION IS SUBJECT TO CIVIL AND CRIMINAL PENALTIES.
  6. // This notice may not be removed from this file.
  7. import 'package:compdfkit_flutter/configuration/cpdf_configuration.dart';
  8. import 'package:compdfkit_flutter/configuration/cpdf_options.dart';
  9. import 'package:compdfkit_flutter/widgets/cpdf_reader_widget.dart';
  10. import 'package:compdfkit_flutter/widgets/cpdf_reader_widget_controller.dart';
  11. import 'package:flutter/material.dart';
  12. class CPDFReaderWidgetExample extends StatefulWidget {
  13. final String documentPath;
  14. const CPDFReaderWidgetExample({super.key, required this.documentPath});
  15. @override
  16. State<CPDFReaderWidgetExample> createState() =>
  17. _CPDFReaderWidgetExampleState();
  18. }
  19. class _CPDFReaderWidgetExampleState extends State<CPDFReaderWidgetExample> {
  20. late CPDFReaderWidgetController _controller;
  21. @override
  22. Widget build(BuildContext context) {
  23. return Scaffold(
  24. resizeToAvoidBottomInset: false,
  25. appBar: AppBar(
  26. title: const Text('CPDFReaderWidget Example'),
  27. leading: IconButton(
  28. onPressed: () {
  29. _save();
  30. Navigator.pop(context);
  31. },
  32. icon: const Icon(Icons.arrow_back)),
  33. ),
  34. body: CPDFReaderWidget(
  35. document: widget.documentPath,
  36. configuration: CPDFConfiguration(
  37. toolbarConfig: const CPDFToolbarConfig(
  38. iosLeftBarAvailableActions: [CPDFToolbarAction.thumbnail],
  39. )
  40. ),
  41. onCreated: (controller) {
  42. setState(() {
  43. _controller = controller;
  44. });
  45. },
  46. ));
  47. }
  48. void _save() async {
  49. bool saveResult = await _controller.save();
  50. debugPrint('ComPDFKit-Flutter: saveResult:$saveResult');
  51. }
  52. }