NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #589 most downloaded on pub.dev
A Flutter plugin that provides a PDFView widget on Android and iOS.
Last release 2 months ago
08 Aug 2026
Release timing varies
gaps range from 2 weeks to 11 months
Nearly every release is documented
notes for 52 of 52 stable releases
Nothing withdrawn
no release was ever pulled
7 years old
68 releases · first in 2019
Nothing published for this version
Nothing published for this version
Nothing published for this version
Improve Android/iOS render quality defaults for #158
One column per quarter.
Fix #175 : getScreenshot no longer returns a white image under hybrid composition
Fix load flash / first-layout size / iOS blank open ( #355 ):
Document Android AcroForm / fillable form field rendering limits ( #303 , #354 )
Add first-class onTap callback (Dart + Android + iOS) so single taps are reported from the native PDF view; prefer this over gestureRecognizers + TapG
Document iOS platform-view composition limits for ColorFiltered / ShaderMask / BackdropFilter over PDFView , with official Flutter evidence and workar
ColorFiltered / ShaderMask / BackdropFilter over PDFView, with official Flutter evidence and workarounds (#213, #352)1.5.0-beta.1 (Kotlin + Swift native migration)dependencies:
flutter_pdfview: 1.5.0-beta.2pub.dev: https://pub.dev/packages/flutter_pdfview/versions/1.5.0-beta.2
Feedback: #351
Co-Authored-By: Claude Opus 5 (1M context) noreply@anthropic.com Claude-Session: https://claude.ai/code/session_01XKmmG2v9eJSWFDLy6mRe8F
Co-Authored-By: Claude Opus 5 (1M context) noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01XKmmG2v9eJSWFDLy6mRe8F
Stable release of the 1.4.5-beta.1 → 1.4.5-beta.5 line; no code changes since 1.4.5-beta.5.
Stable release of the 1.4.5-beta.1 → 1.4.5-beta.5 line; no code changes since 1.4.5-beta.5.
Highlights since 1.4.4 (see the beta sections below for the full list):
initExpensiveAndroidView) — fixes surface lock #263, EGL_NO_DISPLAY crash #280, blanking on rotation #9 / dialogs #182 / load #298, and GPU glitches #306http/https; other schemes are reported through onLinkHandler insteadfitPolicy (WIDTH / HEIGHT / BOTH) implemented for Android parity, page fit decoupled from autoSpacing #150, onError on bad passwords/documents #211, white background and continuous scrolling #204, Privacy Manifest #271libc++_shared.so packaging #287minZoom / maxZoom #296, showScrollIndicators #337, onLoadComplete / onDraw, getCurrentPageSize(), getScreenshot(), getPosition() / setPosition(), getScale() / setScale(), reload(), setZoomLimits() #333filePath / pdfData changes #181PDFView in complex widget trees.http(s) PDF links no longer auto-open — handle them yourself in onLinkHandler.Fix #150: iOS initial page fit no longer depends on autoSpacing (spacing vs zoom decoupled); re-fit after placeholder→real bounds and on rotation whil
autoSpacing (spacing vs zoom decoupled); re-fit after placeholder→real bounds and on rotation while preserving user zoomfitPolicy (WIDTH / HEIGHT / BOTH) on iOS for parity with Android (iOS previously ignored the flag and always auto-fit the full page; default FitPolicy.WIDTH now matches Android)compileOnly Flutter embedding jar, fix android/settings.gradle, add scripts/run_android_unit_tests.shBREAKING: Raise minimum Flutter version to 3.32.0 and Dart SDK to 3.8.0 (aligns with flutter_lints 6 and formatter.page_width)
flutter_lints 6 and formatter.page_width)initSurfaceAndroidView) to true hybrid composition (initExpensiveAndroidView) — fixes Surface was already locked! #263, EGL_NO_DISPLAY quick-open crash #280, blank on rotation #9, blank after dialogs #182, blank on load #298, and GPU glitches #306Directionality (was hardcoded RTL)filePath / pdfData changes so a new PDF can loadhttp/https (avoids file:// crashes and unsafe schemes); still reports all schemes via onLinkHandlersetPosition/setScale through a queue for any number of overlapping callers; null platform replies return falsepdfData via cached digests instead of a full per-byte scan on every rebuildPDFView with a non-zero framefromFile on Android (No content provider)pickFirst packaging for libc++_shared.so native merge conflictsnightMode setting updates to native Android viewEagerGestureRecognizer for PDFView inside scrollables #265resolveActivity pre-check)setPosition/setScale call permanently hung all later position/scale callsonError (parity with Android)getCurrentPage/onPageChanged reporting a garbage index (NSNotFound) before a page is loadedthumbnailRatio to (0, 1] (Dart assert + Android clamp) — out-of-range values crashed renderinglib/src/ part files; public API unchangedflutter_lints 6.0 with zero analyzer issues; dartdoc for the entire public APIsetPage resolving before the jump executes; reload pages when nightMode changes; handle unescaped file: URIs on iOSFixed issue #337: Added showScrollIndicators option to control native scroll indicator visibility.
Fix iOS PDF view reporting not ready when it is on initial load
minZoom and maxZoom to the README.mdPDFView on disposeMigrate backgroundColor serialization from deprecated Color.value to Color.toARGB32()
onError callback not firing for invalid documents #211onPageChanged not triggered on first load #66maxZoom and minZoom parameters #296backgroundColor serialization from deprecated Color.value to Color.toARGB32()nightModeBackgroundColor parameteronLoadComplete callback triggered when the PDFView has loaded its document #333 @JaseElderonDraw callback triggered on each draw within the PDFView #333 @JaseEldergetCurrentPageSize() controller method returning width and height of the loaded page #333 @JaseEldergetScreenshot(String fileName) controller method to save a PNG of the PDFView contents #333 @JaseEldergetPosition() and setPosition(Offset position) controller methods for the PDF top-left offset #333 @JaseEldergetScale() and setScale(double scale) controller methods for PDF zoom #333 @JaseElderreload() controller method to reload the PDF document #333 @JaseEldersetZoomLimits(double minZoom, double midZoom, double maxZoom) controller method #333 @JaseElder.value usage #333 @JaseElderFixes an Android rendering #330 @TimelessLin
Stable Android 16KB page size support
Add Android 16KB page size support #321 @opsenes
io.github.oothp:android-pdf-viewer:3.2.0-beta05Fixed memory leak on iOS #315 @flbaue
Revert .toARGB32() to depricated .value
.toARGB32() to depricated .valueAdd support for Swift Package Manager
Add error handling on background color in iOS
Add support for background color 278 @bobbybun
- hotfix: Crash on iOS 18
build.gradle namespace #253 @DrBu7cher -
Upgrade compileSdkVersion to 33
Upgrade android-pdf-viewer to beta.3
- Deprecate fitEachPage
fitEachPageAdd documentation on properties
Downgrade android-pdf-viewer from beta.3 to beta.2
Fixed defaultPage not working on iOS #227 @wmatusiak
Fixed invalid frame of PDFView on IOS #201 @wmatusiak
Change dependency for AndroidPdfViewer #202 @oorfalimak
Fixed the Initial Zoom bug in IOS #192 @moazelsawaf
Updated onDoubleTap on ios #174 @The-Redhat
Updated dependencies to be newest with latest flutter version.
Migration Android V2 Embedding & jCenter to mavenCentral #147 @PcolBP
Migrate to nullsafety, add compatible to Flutter 2.0 #130 @stijnie2210
Add support for reading PDF from byte data #122 @tvh, @deakjahn
- Add default proguard-rules. - Closes #87
- #81 add support for handle url navigation on flutter.
Remove print statement #95 @krispypen
Enable annotation on android #103 @soul
iOS proper scaling for PDF with pages on landscape-orientation #104 @andresath
Upgrade Android SDK version to 29 #114 @miguelslemos
Fixed setPage return value from int to bool on iOS #118 @daisuke310vvv
Fixed setPage return value from int to bool on iOS #120 @daisuke310vvv
Format lib/flutter_pdfview.dart
pod_target_xcconfig suggested by @zhenpeng0hou
- Close #67
Add support tap on link inside the pdf
- Close #72 - Fix internal page links
- #78 fix unlimited zoom out in iOS. @daanporon
Add support on FitPolicy on android
- Initial Release - Works better
- Update pub description
- Set correct scale in iOS
- Support enableSwipe in iOS
enableSwipe in iOSAdd controller functions description in document
Your coding agent can read these notes before it upgrades. Set up the MCP server →