Pdf Thumbnail

style: very good analysis Powered by Mason License: MIT

Thumbnail viewer for pdfs

Installation πŸ’»

❗ In order to start using Pdf Thumbnail you must have the Flutter SDK installed on your machine.

Add pdf_thumbnail to your pubspec.yaml:


Install it:

flutter packages get

Example ✍️

 return Stack(
              children: [
                  height: MediaQuery.of(context).size.height,
                  width: MediaQuery.of(context).size.width,
                  child: PdfViewer(
                    filePath: snapshot.data!.path,
                if (showThumbnail)
                    bottom: 0,
                    width: MediaQuery.of(context).size.width,
                    // Here's the thumbnail widget.
                    child: PdfThumbnail.fromFile(snapshot.data!.path),

There is a detailed example app in the repo, but I've deleted iOS and Android folders. Simple go to example folder, and run flutter create . inside the folder to add missing native files for the example app.



Caching ⏲

I left caching part unopinionated to keep the package simple. Just create your own class from ImageThumbnailCacher and implement the read/write methods. Holding images as Uint8List, so Map<int, Uint8List> is what's need to be written and read to cache. Map for page number to images.

class ThumbnailCacher implements ImageThumbnailCacher {
  Future<PageToImage?> read(String id) async {
    return api.localStorage.readThumbnails(id);

  Future<bool> write({required String id, required PageToImage map}) {
    return api.localStorage.writeThumbnails(id: id, map: map);

I'm using Hive to cache.

Roadmap πŸ—ΊοΈ

  • X Customization for colors, decoration etc.
  • X onTap callback and page number.
  • X Caching.
  • Different layouts and scroll axises.
  • Lazy loading.


Thumbnail viewer for pdfs