flutter_pdf_viewer
一个用于 Flutter 的原生 PDF 查看器。
- 星标
- 107
- 复刻
- 40
- 最近推送(UTC)
- 2020年4月23日
- 项目状态
- 未归档
原始 README
以下为英文项目原文快照,最新内容请访问 GitHub。
flutter pdf viewer
A native Pdf viewer for flutter, built on AndroidPdfViewer.
P.S. Android Only!
Features
- Night Mode
- Scroll Bar
- Horizontal swipe
- Pinch to zoom
- Show inline Videos in Pdf
- Immersive mode
- Page by page analytics
Security
- Features fast native speed XOR - decryption of files.
- Password protected pdf.
- Display PDF from bytes without ever touching the disk!
Drawbacks
-
Inline Pdf Viewing is not supported. ( A new activity is opened ). See #1.A proof of concept for inline PDFs is available at the inline branch.
Install
To use this plugin, follow the installation instructions.
License: MIT
NOTE: You must add these lines at android/app/build.gradle.
(This is required by ExoPlayer, which is used to play videos).
android {
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
Example
$ git clone https://github.com/pycampers/flutter_pdf_viewer.git
$ cd flutter_pdf_viewer/example
$ flutter run
Preview
Generating 64-bit APKs
The Underlying native library tends to blow up the APK size. So, you can build a separate APK for each CPU architecture.
This will also fix an issue with flutter tooling, where 64-bit ARM devices don't work.
Add the following section in android/app/build.gradle -
android {
defaultConfig {
ndk {
abiFilters "<arch>"
}
}
}
-
For 32-bit APK, replace
<arch>witharmeabi-v7a, and run$ flutter build apk --releaseas usual. -
For 64-bit APK, replace
<arch>witharm64-v8a, and run$ flutter build apk --release --target-platform=android-arm64.
Now you have 2 Apks, which you will need to publish separately to the Play Store. For that you need to tweak the android:versionCode property to have slightly different values for each build.
The exact "Rules for multiple APKs" can be found here.
Thanks
- AndroidPdfViewer for proving this wonderful, and simple to use library.
- #10348.
使用的依赖
依赖清单 3 项
- flutter
{"sdk":"flutter"} - crypto
^2.0.6 - plugin_scaffold
^1.1.1
如何选择适合项目的代码仓?
先按使用场景筛选,再比较项目活跃情况,最后到原始仓库核对使用要求。
- 通过仓库名、作者或描述搜索,再按技术分类缩小范围。
- 结合星标、复刻与最近推送比较项目;星标反映社区关注,不代表质量保证。
- 使用前在 GitHub 核对 README、许可证与 Issues。
来源与维护
“A repository is the most basic element of GitHub.”
GitHub Docs — About repositories ↗