毕设2:JavaFX预览PDF

Posted on 2024-01-18 17:08  Capterlliar  阅读(234)  评论(0编辑  收藏  举报

找了一些资料,汇总一下。

1. 封装好的PDF预览器

PDFViewerFX

GitHub上的一个预览器,封装了pdf.js,也就是通过塞一个浏览器进app来解析pdf。试了一下功能不知道为什么疯狂error,动一动给就卡死了。

OpenViewerFX 

神秘预览器,除了maven全网查无此人。顺着官网,也就是Jpedal的公司找过去有一个Jpedal Viewer,然而只支持swing不支持javafx

2. 曲线救国,转图片后显示

一般有这么几个库,搜了一下使用体验(还没实际测过):

PDFBox:开源,图片质量高,转换速度慢,可能内存泄漏;

PDF Render:开源,字体不全,转换速度快;

Jpedal:有开源版本,字体不全,疑似年久失修;

icepdf:有开源版本,图片质量一般,转换速度快,占用内存较小。

倾向于icepdf。但有一个封装好的fxPDF看着挺漂亮的,好像基于PDFBox,考虑到一般论文顶多几十页(并且我不想写分页器和图片放大缩小功能),如果速度可以接受的话就它了。

把fxPDF塞进去了,明天调调样式。fxPDF在maven中心仓库里没上架,需要clone下来maven install。

中间出现了两个怪问题,一个是Lombok版本至少要1.8.2,一个是fxpdf用的2.x的pdfbox,新项目用的3.x,这两个不兼容,要调一样。


调好了pdf预览,写了右边文件框

右边可以用TreeView列文件,点开是候选名称。

TBD:窗体大小调整(露出任务栏),pdf默认放缩比例改小