A flutter plugin for handling PDF files. Works on both Android & iOS
Add flutter_plugin_pdf_viewer as a dependency in your pubspec.yaml file.
flutter_plugin_pdf_viewer: any
No permissions required. Uses application cache directory.
No permissions required.
// Load from assets
PDFDocument doc = await PDFDocument.fromAsset('assets/test.pdf');
 
// Load from URL
PDFDocument doc = await PDFDocument.fromURL('http://www.africau.edu/images/default/sample.pdf');
// Load from file
File file  = File('...');
PDFDocument doc = await PDFDocument.fromFile(file);
// Load specific page
PDFPage pageOne = await doc.get(page: _number);
Use the pre-built PDF Viewer
@override
  Widget build(BuildContext context) {
    Scaffold(
        appBar: AppBar(
          title: Text('Example'),
        ),
        body: Center(
        child: _isLoading
            ? Center(child: CircularProgressIndicator())
            : PDFViewer(document: document)),
    );
  }
This code produces the following view:
- Allow password-protected files
- Refactor PDFDocument.getAll() method
- Increase page resolution
- Add swipe to change page
| Name | Description | 
|---|---|
| path_provider | A Flutter plugin for finding commonly used locations on the filesystem. Supports iOS and Android. | 
| flutter_cache_manager | A CacheManager to download and cache files in the cache directory of the app. Various settings on how long to keep a file can be changed. | 
| numberpicker | NumberPicker is a custom widget designed for choosing an integer or decimal number by scrolling spinners. | 
| flutter_advanced_networkimage | An advanced image provider provides caching and retrying for flutter app. Now with zoomable widget and transition to image widget. | 
