开源Java工具库 VS PDF转化工具(java pdf api)

createh52个月前 (01-22)技术教程20

Hutool

Hutool是一个功能丰富的JAVA工具类库,通过静态方法封装,使得用户学习各类API接口的成本大幅降低。

从名字可以看出,作者似乎想让大家可以借助工具揣着聪明装糊涂~

Hutool涵盖了Java开发底层代码中的各种常见问题,可以作为之前常用的util包的替代品,节省了用户对于项目中公用类及公用工具的封装时间,可以更好的实现业务功能。

比如计算MD5的话,可以直接如此使用Hutool -> SecureUtil.md5()

其主要模块包括:

  • hutool-aop JDK动态代理封装,提供非IOC下的切面支持
  • hutool-bloomFilter 布隆过滤,提供一些Hash算法的布隆过滤
  • hutool-cache 简单缓存实现
  • hutool-core 核心,包括Bean操作、日期、各种Util等
  • hutool-cron 定时任务模块,提供类Crontab表达式的定时任务
  • hutool-crypto 加密解密模块,提供对称、非对称和摘要算法封装
  • hutool-db JDBC封装后的数据操作,基于ActiveRecord思想
  • hutool-dfa 基于DFA模型的多关键字查找
  • hutool-extra 扩展模块,对第三方封装(模板引擎、邮件、Servlet、二维码、Emoji、FTP、分词等)
  • hutool-http 基于HttpUrlConnection的Http客户端封装
  • hutool-log 自动识别日志实现的日志门面
  • hutool-script 脚本执行封装,例如Javascript
  • hutool-setting 功能更强大的Setting配置文件和Properties封装
  • hutool-system 系统参数调用封装(JVM信息等)
  • hutool-json JSON实现
  • hutool-captcha 图片验证码实现
  • hutool-poi 针对POI中Excel和Word的封装
  • hutool-socket 基于Java的NIO和AIO的Socket封装
  • hutool-jwt JSON Web Token (JWT)封装实现

感兴趣的小伙伴可以赶紧来引用试下。

项目地址:https://gitee.com/dromara/hutool

MinerU

MinerU是一个将PDF转化为机器可读格式的工具,这里指的可读格式是指markdown、json之类的格式。方便用户对于文档后续的使用处理。

主要功能包括:

  • 删除页眉、页脚、脚注、页码等元素,保持语义连贯
  • 对多栏输出符合人类阅读顺序的文本
  • 保留原文档的结构,包括标题、段落、列表等
  • 提取图像、图片标题、表格、表格标题
  • 自动识别文档中的公式并将公式转换成latex
  • 自动识别文档中的表格并将表格转换成latex
  • 乱码PDF自动检测并启用OCR
  • 支持CPU和GPU环境
  • 支持windows/linux/mac平台

对于使用效果,项目提供在线体验功能,可以尝试先用一下看看。

MinerU支持仅使用CPU,而无需必要用的GPU。

安装CPU版本

conda create -n MinerU python=3.10
conda activate MinerU
pip install -U magic-pdf[full] --extra-index-url https://wheels.myhloli.com -i https://pypi.tuna.tsinghua.edu.cn/simple

下载模型权重文件,拷贝配置文件 magic-pdf.template.json并进行配置。

项目地址:https://gitee.com/ergmax/MinerU

相关文章

轻量级 Java 权限认证框架Sa-Token初体验(三)

经过前两篇文章的体验,我已经初步接触了Sa-Token的登录、退出、在线状态检测以及前后端分离的实现。这次来体验Sa-Token部分常用配置。sa-toekn.token-name token名称首先...

java权限控制框架sa-token使用心得

之前自用的项目中使用的是springsecurity权限管理框架,没有使用自定义token,因此是默认的cookie方式,突然有一天浏览器在跨域的情况下不支持cookie了,虽然可以更改浏览器的安全设...

十五张图带你快速入门 shardingsphere-proxy

Apache ShardingSphere 是一款分布式的数据库生态系统,它包含两大产品:ShardingSphere-ProxyShardingSphere-JDBC很多同学对于 ShardingS...