DImuthuUpe / AndroidPdfViewer

Android view for displaying PDFs rendered with PdfiumAndroid
Apache License 2.0
8.05k stars 1.85k forks source link

Future of the project #1186

Open DImuthuUpe opened 1 month ago

DImuthuUpe commented 1 month ago

Dear AndroidPdfViewer developers and users,

There is no doubt that this project is the prominent open-source PDF library available for Android right now. However, it has not actively been developed and upgraded in the last 5 years. As a result of that, we can see lots of detached forks and developers ended up living in their own islands. After a brief discussion with @barteksc who is the founder of this project, we decided to transfer the ownership of the project to my GitHub account and I working as the maintainer for the upcoming future.

Given all of that, I need your help to bring the project back on track including addressing bug fixes, feature improvements, and compatibility support for the latest Android environments. I am tagging a few developers who sent some recent PRs to the project just to have the discussion going on. Anyone who is interested in contributing to the project can comment here. Let's build a pool of community and share the responsibility to revive this awesome project.

@lion1988dev @tamalmaity90

odmfl commented 1 month ago

@DImuthuUpe You also need to update pdfium.There are tons of forks, some have even added interesting things. As done in other forks, one could merge pdfium into the same project. I don't know if it would be more useful.

I'll leave you some pdfium/pdfviewer projects where text search has been implemented.

https://github.com/TEA-ebook/AndroidPdfViewer (search, selection and highlighting should work here)

https://github.com/Lesmm/AndroidPdfViewer/tree/develop ( in this branch search and selection works)

https://gitlab.com/mudlej_android/mj_pdf_reader (in this app the search and text section works, changes have been made to pdfium and pdfviewer)

I advise you to try the changes in the first link because the sample project does not exist and has not been tested, but it may work better than the others.

We need an updated and supported library, thanks for your work

odmfl commented 1 month ago

for pdfium I still recommend this https://github.com/marain87/PdfiumAndroid

lisonge commented 1 month ago

If you want to seek help from contributors.

I think that this open-source project might be better managed under an organization account than under an individual account.

Maybe you could create a new GitHub organization account to manage it.

DUWENINK commented 1 month ago

Greeeeeeeet!

Acoee commented 4 weeks ago

Wow, so can we migrate to AndroidX now?

xRamazaNx commented 1 week ago

https://github.com/TEA-ebook/AndroidPdfViewer (search, selection and highlighting should work here)

P.S. This fork misreads large PDF files. A file that has many pages is not scrolled to the last page

odmfl commented 1 week ago

https://github.com/TEA-ebook/AndroidPdfViewer (search, selection and highlighting should work here)

P.S. This fork misreads large PDF files. A file that has many pages is not scrolled to the last page

Thanks for the test, leaving aside the problem of large pdfs. I wanted to ask you do other things like search, selection and highlighting work in that fork?

xRamazaNx commented 1 week ago

Thanks for the test, leaving aside the problem of large pdfs. I wanted to ask you do other things like search, selection and highlighting work in that fork?

Text selection works with a long press, it is colored blue and can be copied. But i didn't test the search because I abandoned the library after detect the problem. This fork has exactly the same problem -> https://github.com/Lesmm/AndroidPdfViewer/tree/develop

odmfl commented 6 days ago

Thanks for the test, leaving aside the problem of large pdfs. I wanted to ask you do other things like search, selection and highlighting work in that fork?

Text selection works with a long press, it is colored blue and can be copied. But i didn't test the search because I abandoned the library after detect the problem. This fork has exactly the same problem -> https://github.com/Lesmm/AndroidPdfViewer/tree/develop

I had already read elsewhere about the problem of large PDF , should be a pdfium problem. Could you add "sample" to that fork ( tea ebook) to be able to create a test apk? So we can do some tests to try to fix the problem

xRamazaNx commented 6 days ago

Could you add "sample" to that fork ( tea ebook) to be able to create a test apk?

Yes i'll do it in a few days.

DImuthuUpe commented 5 days ago

Thanks, @xRamazaNx and @odmfl for taking the initiative. We can use that fork as the basis and merge those back to the main repo once we know that it is stable.

xRamazaNx commented 5 days ago

@odmfl I added an app sample module here https://github.com/xRamazaNx/AndroidPdfViewer. In my tests, the scrolling issue starts on page 1124.

odmfl commented 4 days ago

@odmfl I added an app sample module here https://github.com/xRamazaNx/AndroidPdfViewer. In my tests, the scrolling issue starts on page 1124.

I did some tests, the problem only occurs in portrait mode, in landscape mode all pages are displayed. I'll do more tests.

The text selection is not optimal, it was better in the other one. In this one, however, you can copy the text.

Is search not enabled or not available? In the other there was

yd-threra-and commented 4 days ago

@DImuthuUpe,

Thank you for taking over the maintenance of this library. We have encountered a critical issue when using the library on an Android 15 emulator with 16 KB page sizes. We have raised a new issue with all the details here.

This problem is crucial for our project as we prepare for future releases on the Play Store. Additionally, it is expected to affect existing apps targeting earlier Android versions when running on future Android 15 devices with 16 KB page sizes. Any updates or guidance would be greatly appreciated. Thank you for your continued efforts in maintaining and improving this library.

stevenzeck commented 3 days ago

If you want to seek help from contributors.

I think that this open-source project might be better managed under an organization account than under an individual account.

Maybe you could create a new GitHub organization account to manage it.

I would also suggest an organization account. Because this project has not been maintained, there are a lot of forks (and forks of forks), and it's hard to know which one is "official".

Also, will this be available through Maven Central? I've found that jitpack.io is often unreliable.