Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pridať lazy loading k PDF Box #456

Open
celuchmarek opened this issue Jun 13, 2024 · 7 comments
Open

Pridať lazy loading k PDF Box #456

celuchmarek opened this issue Jun 13, 2024 · 7 comments
Labels
enhancement New feature or request

Comments

@celuchmarek
Copy link
Member

Kvôli porlbémom s PdfJS (#451) sme prešli na PDF Box. PDF dokument sa pomocou PDF Boxu vyrenderuje do list obrázkov strán a tie sa potom nahodia do HBoxv v JavaFX ScrollPane. Je tu trochu problém s výkonom pri veľkých PDF súboroch (desiatky MB). Bolo by fajn pridať lazy laoding na tieto obrázky - ScrollPane má nejakú vlastnosť, že pre jeho child elemtny sa dá zistiť, či sú vo viewporte. Dá sa spraviť to, že sa strany PDF budú renderovať live podľa toho, ktoré sú práve vo vieporte +- pár strán.

@andrewshadura
Copy link
Contributor

Potvrdzujem, otvoril som relatívne jednoduchý PDF, trvalo takmer minútu, kým sa dokument otvoril, bez žiadnej indikácie, že sa niečo robí (dobre, že som akurát pozeral syslog, kde bolo niečo vidno).

@celuchmarek
Copy link
Member Author

@andrewshadura aký veľký / koľko má strán ten relatívne malý PDF dokument? Minúta je extrémne veľa. Aké máš v nastaveniach inak DPI? Prípadne, na akom systéme to takto dlho trvá?

@andrewshadura
Copy link
Contributor

Má 13 strán, 342791 bytov, takmer nemá obrázky, je zopár formulárov, sú v ňom už dva podpisy. Na verzii 1.99.18 sa otváralo okamžite.
8×Intel(R) Core(TM) i7-10610U CPU @ 1.80GHz

@andrewshadura
Copy link
Contributor

Kde sa DPI nastavuje neviem, nemenil som nič.

@andrewshadura
Copy link
Contributor

Ale ok, nebola to minúta, asi polovica z toho:

09:53:13 nuevo autogram[519674]: Nov 25, 2024 9:53:13 AM org.apache.pdfbox.pdfparser.XrefTrailerResolver setStartxref
09:53:13 nuevo autogram[519674]: WARNING: Did not found XRef object at specified startxref position 0
09:53:24 nuevo autogram[519674]: Nov 25, 2024 9:53:24 AM org.apache.pdfbox.pdmodel.font.FileSystemFontProvider loadDiskCache
09:53:24 nuevo autogram[519674]: WARNING: 4096 new fonts found, font cache will be re-built
09:53:24 nuevo autogram[519674]: Nov 25, 2024 9:53:24 AM org.apache.pdfbox.pdmodel.font.FileSystemFontProvider <init>
09:53:24 nuevo autogram[519674]: WARNING: Building on-disk font cache, this may take a while
09:53:37 nuevo autogram[519674]: Nov 25, 2024 9:53:37 AM org.apache.pdfbox.pdmodel.font.FileSystemFontProvider <init>
09:53:37 nuevo autogram[519674]: WARNING: Finished building on-disk font cache, found 4162 fonts
09:53:37 nuevo autogram[519674]: Nov 25, 2024 9:53:37 AM org.apache.pdfbox.pdmodel.font.PDTrueTypeFont <init>
09:53:37 nuevo autogram[519674]: WARNING: Using fallback font LiberationSans for Calibri
09:53:37 nuevo autogram[519674]: Nov 25, 2024 9:53:37 AM org.apache.pdfbox.pdmodel.font.PDTrueTypeFont <init>
09:53:37 nuevo autogram[519674]: WARNING: Using fallback font LiberationSans for Calibri
…
09:53:39 nuevo autogram[519674]: Nov 25, 2024 9:53:39 AM org.apache.pdfbox.pdmodel.font.PDTrueTypeFont <init>
09:53:39 nuevo autogram[519674]: WARNING: Using fallback font LiberationSans for Calibri-Bold
09:53:40 nuevo autogram[519674]: Nov 25, 2024 9:53:40 AM org.apache.pdfbox.pdfparser.XrefTrailerResolver setStartxref
09:53:40 nuevo autogram[519674]: WARNING: Did not found XRef object at specified startxref position 0
09:53:41 nuevo autogram[519674]: Nov 25, 2024 9:53:41 AM org.apache.pdfbox.pdfparser.XrefTrailerResolver setStartxref
09:53:41 nuevo autogram[519674]: WARNING: Did not found XRef object at specified startxref position 0

@celuchmarek
Copy link
Member Author

Snímka obrazovky 2024-11-25 o 11 31 40

@andrewshadura
Copy link
Contributor

Je tam 100.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants