Skip to content

Commit d9c8fa3

Browse files
committed
Correctly render pdf in background, add callback for when a page has been rendered
1 parent 85e7a06 commit d9c8fa3

File tree

6 files changed

+233
-186
lines changed

6 files changed

+233
-186
lines changed

app/src/main/java/com/rajat/sample/pdfviewer/ComposeActivity.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ fun MyPdfScreenFromUri(modifier: Modifier = Modifier) {
101101
@Composable
102102
fun MyPdfScreenFromUri(uri: Uri, modifier: Modifier = Modifier) {
103103
val lifecycleOwner = LocalLifecycleOwner.current
104-
PdfRendererViewCompose(
104+
Pdf(
105105
modifier = modifier,
106106
source = PdfSource.FromUri(uri),
107107
lifecycleOwner = lifecycleOwner,
@@ -136,7 +136,7 @@ fun MyPdfScreenFromUri(uri: Uri, modifier: Modifier = Modifier) {
136136
@Composable
137137
fun MyPdfScreenFromUrl(url: String, modifier: Modifier = Modifier) {
138138
val lifecycleOwner = LocalLifecycleOwner.current
139-
PdfRendererViewCompose(
139+
Pdf(
140140
modifier = modifier,
141141
source = PdfSource.FromUrl(url),
142142
lifecycleOwner = lifecycleOwner,
@@ -173,7 +173,7 @@ fun MyPdfScreenFromUrl(url: String, modifier: Modifier = Modifier) {
173173
fun MyPdfScreenFromFile() {
174174
val lifecycleOwner = LocalLifecycleOwner.current
175175
val pdfFile = File("path/to/your/file.pdf") // Replace with your file path
176-
PdfRendererViewCompose(
176+
Pdf(
177177
source = PdfSource.FromFile(pdfFile),
178178
lifecycleOwner = lifecycleOwner
179179
)
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package com.rajat.pdfviewer
2+
3+
import android.graphics.Bitmap
4+
5+
sealed class PdfRenderResult(open val pageNo: Int) {
6+
data class Error(override val pageNo: Int, val cause: Throwable? = null) : PdfRenderResult(pageNo)
7+
data class Success(override val pageNo: Int, val bitmap: Bitmap) : PdfRenderResult(pageNo)
8+
}

0 commit comments

Comments
 (0)