flutter_pdfview

Native PDF View for iOS and Android

xscode

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:

dependencies:
  flutter_pdfview: ^1.0.0+10

2. Install it

You can install packages from the command line:

with Flutter:

$ flutter packages get

Alternatively, your editor might support pub get or flutter packages get. Check the docs for your editor to learn more.

3. Setup

iOS

Opt-in to the embedded views preview by adding a boolean property to the app's Info.plist file with the key io.flutter.embedded_views_preview and the value YES.

# Info.plist
...
<key>io.flutter.embedded_views_preview</key>
<true/>
...

4. Import it

Now in your Dart code, you can use:

import 'package:flutter_pdfview/flutter_pdfview.dart';

Options

NameAndroidiOSDefault
defaultPage0
onViewCreatednull
onRendernull
onPageChangednull
onErrornull
onPageErrornull
onLinkHandlenull
gestureRecognizersnull
filePath
fitPolicyFitPolicy.WIDTH
enableSwipetrue
swipeHorizontalfalse
passwordnull
nightModefalse
passwordnull
autoSpacingtrue
pageFlingtrue
pageSnaptrue
preventLinkNavigationfalse

Controller Options

NameDescriptionParametersReturn
getPageCountGet total page count-Future<int>
getCurrentPageGet current page-Future<int>
setPageGo to/Set pageint pageFuture<bool>

Example

PDFView(
  filePath: path,
  enableSwipe: true,
  swipeHorizontal: true,
  autoSpacing: false,
  pageFling: false,
  onRender: (_pages) {
    setState(() {
      pages = _pages;
      isReady = true;
    });
  },
  onError: (error) {
    print(error.toString());
  },
  onPageError: (page, error) {
    print('$page: ${error.toString()}');
  },
  onViewCreated: (PDFViewController pdfViewController) {
    _controller.complete(pdfViewController);
  },
  onPageChanged: (int page, int total) {
    print('page change: $page/$total');
  },
),

For production usage

If you use proguard, you should include this line.

-keep class com.shockwave.**

Dependencies

Android

AndroidPdfViewer

iOS (only support> 11.0)

PDFKit

Support

Support

Buy Me A Coffee

Donate with PayPal button

Developer

Libraries

flutter_pdfview