10+年产品经理聊聊产品、测测产品,产品人交流学习成长平台,按 Ctrl+D 收藏我们
关于我 留言板 小程序 标签云

苏米客

  • 首页
  • AIGC
    • AI最新动态
    • AI学习教程
    • AI工具集合
    • AI产品百科
    • AI编程开发
    • AI提示词
    • AI开源项目
  • Axure
    • Axure动态
    • Axure教程
  • 产品
    • 用户体验
    • 产品设计
    • 苏米杂谈
  • 资源
    • 产品UI组件库
    • 开源图标库
    • 中后台框架
  • 书单
    • AI书籍
    • 用户体验
    • UI视觉
    • 产品研究
    • 其他类型
  • 下载
    • Axure组件
    • Axure原型
    • 文档报告
    • 素材资源
  • 登录
  • 首页
  • AIGC
    • AI最新动态
    • AI学习教程
    • AI工具集合
    • AI产品百科
    • AI编程开发
    • AI提示词
    • AI开源项目
  • Axure
    • Axure动态
    • Axure教程
  • 产品
    • 用户体验
    • 产品设计
    • 苏米杂谈
  • 资源
    • 产品UI组件库
    • 开源图标库
    • 中后台框架
  • 书单
    • AI书籍
    • 用户体验
    • UI视觉
    • 产品研究
    • 其他类型
  • 下载
    • Axure组件
    • Axure原型
    • 文档报告
    • 素材资源
当前位置: 首页 » AI开源项目

BentoPDF:一款真正零上传的浏览器端PDF工具箱,开源可自部署

2小时前 AI开源项目 14 0

在日常工作中,我经常需要处理PDF文档——合并报价单、给设计稿加水印、压缩大文件以便发送。市面上的PDF工具不少,但用起来总有顾虑:有些要求上传文件到服务器,有些限制处理次数或文件大小,更让人担心的是,包含敏感信息的文档一旦上传到第三方平台,很难确保数据不被留存或滥用。

最近我关注到一个开源项目BentoPDF,它的核心特点是所有操作都在浏览器本地完成,文件不离开设备。

经过一段时间的试用,我发现它在隐私保护、功能完整度和部署灵活性上都有不错的表现,值得分享给有类似需求的朋友。

项目介绍

BentoPDF是一个完全运行在浏览器端的PDF处理工具集。与常规在线PDF服务不同,它不依赖后端服务器,所有文件处理逻辑都通过客户端JavaScript执行。这意味着用户选择的PDF文件仅在本地设备中被读取和处理,不会产生网络传输。

项目采用Vite + TypeScript + Tailwind CSS构建前端,界面简洁流畅。底层依赖多个成熟的开源库实现PDF操作能力:

  • PDF.js:Mozilla开源的PDF渲染引擎,负责文档预览

  • PDFLib.js:客户端PDF生成与编辑库

  • PDFKit:用于创建结构化PDF内容

  • Cropper.js:实现图像裁剪等交互功能

项目遵循GNU AGPLv3开源协议,代码托管在GitHub,支持自由使用、修改和分发。

项目地址:https://github.com/alam00000/bentopdf

在线体验:https://bentopdf.com

核心功能

BentoPDF提供了40+个PDF处理工具,覆盖日常工作中的主要需求。

我按功能类别整理如下:

文档组织与管理

功能 说明
合并PDF 将多个PDF文件合并为一个文档
拆分PDF 提取指定页面或按规则拆分文档
页面重组 通过拖拽方式重新排序、复制或删除页面
提取页面 保存指定页面范围为新PDF
旋转PDF 旋转单个或所有页面
N-Up排版 将多页内容排列到单页上(如2x2布局)
交替合并 按页面顺序交替合并两个PDF
海报化 将单页拆分为多页以便打印

内容编辑与修改

功能 说明
PDF编辑器 综合编辑界面,支持文本、图形等操作
添加页码 自定义页码样式和位置
添加水印 支持文字或图片水印
页眉页脚 添加可自定义的页眉和页脚
裁剪PDF 裁剪页面至指定区域
反色处理 反转页面颜色以提高可读性
修改背景色 更改页面背景颜色
修改文字颜色 更改文本内容颜色
填写表单 直接在浏览器中填写PDF表单
扁平化 将表单字段和注释转为静态内容
删除注释 移除批注、高亮等标记
删除空白页 自动检测并删除空白页

格式转换

转为PDF:

  • 图片转PDF(支持JPG、PNG、WebP、SVG、BMP、HEIC、TIFF)

  • Markdown转PDF

  • 文本转PDF

PDF导出:

  • PDF转图片(支持JPG、PNG、WebP、BMP、TIFF)

  • PDF转灰度图

  • OCR识别(将扫描件转为可搜索文本)

安全与优化

功能 说明
压缩PDF 减小文件体积
修复PDF 尝试修复损坏的PDF文件
加密PDF 添加密码保护
解密PDF 移除密码保护(需提供密码)
权限管理 设置打印、复制、编辑等权限
数字签名 添加电子签名
内容涂黑 永久删除敏感内容
元数据编辑 查看和修改作者、标题等元数据
移除元数据 清除所有元数据
线性化 优化PDF以便快速网页浏览
净化PDF 移除潜在的恶意内容

技术特征

客户端架构

BentoPDF的核心设计理念是零后端依赖。所有PDF操作都通过浏览器端的JavaScript库完成,不需要服务器参与。这种架构带来几个明显优势:

  1. 隐私保护:文件只在本地设备中被读取,不产生网络传输

  2. 响应速度:无需等待上传/下载,处理速度取决于设备性能

  3. 离线可用:首次加载资源后,大部分功能可离线使用

  4. 部署简单:前端构建产物是纯静态资源,可托管在任意静态服务器

使用门槛

  • 无需注册:打开网页即可使用

  • 无文件限制:不限制处理次数、文件大小或批量操作

  • 无付费墙:所有功能完全免费开放

  • 无水印:处理后的文件不添加任何标记

安全设计

Docker镜像采用nginx-unprivileged以非root用户身份运行,使用高端口号(8080)以避免需要特权访问。这符合最小权限原则,降低容器逃逸等安全风险。

部署方案

BentoPDF支持多种部署方式,适合不同使用场景。

在线使用

直接访问 https://bentopdf.com 即可使用完整功能。

Docker快速部署

最简单的本地部署方式:

# 从Docker Hub拉取
docker run -p 3000:8080 bentopdf/bentopdf:latest
​
# 或从GitHub Container Registry拉取
docker run -p 3000:8080 ghcr.io/alam00000/bentopdf:latest

访问 http://localhost:3000 即可使用。

Docker Compose部署(推荐)

适合需要长期运行的场景,支持自动重启:

# docker-compose.yml
services:
bentopdf:
  image: bentopdf/bentopdf:latest
  container_name: bentopdf
  ports:
    - '3000:8080'
  restart: unless-stopped

启动命令:

docker-compose up -d

开发环境部署

如需修改代码或参与开发:

# 克隆仓库
git clone https://github.com/alam00000/bentopdf.git
cd bentopdf
​
# 安装依赖
npm install
​
# 启动开发服务器
npm run dev

开发服务器运行在 http://localhost:5173。

版本管理

项目支持语义化版本控制,可通过标签选择特定版本:

# 最新版本
docker pull bentopdf/bentopdf:latest
​
# 指定版本
docker pull bentopdf/bentopdf:1.0.0
docker pull bentopdf/bentopdf:v1.0.0

发布新版本:

npm run release         # 补丁版本 (0.0.1 → 0.0.2)
npm run release:minor   # 次版本 (0.0.1 → 0.1.0)
npm run release:major   # 主版本 (0.0.1 → 1.0.0)

配置选项

Simple Mode(简洁模式)

针对企业内部使用或教育机构,BentoPDF提供简洁模式,可隐藏品牌元素和营销内容:

  • 隐藏导航栏、Hero区域、功能介绍、FAQ、用户评价和页脚

  • 仅显示核心PDF工具

  • 页面标题更改为"PDF Tools"

详细配置方法见项目文档中的SIMPLE_MODE.md。

静态资源托管

由于前端构建产物是纯静态文件,可使用Nginx、Apache或CDN进行托管:

# Nginx配置示例
server {
   listen 80;
   server_name pdf.example.com;
   
   root /var/www/bentopdf;
   index index.html;
   
   location / {
       try_files $uri $uri/ /index.html;
  }
}

应用场景

根据我的使用经验,BentoPDF适合以下场景:

个人用户

  • 学生:合并课件、提取重点章节、转换笔记为PDF

  • 设计师:导出作品集、添加页码和水印

  • 自由职业者:处理合同、发票等商务文档

团队协作

  • 行政人员:批量处理报销单、合同、申请表

  • 开发者:将Markdown文档转为技术手册

  • 内容创作者:格式化输出PDF版本的文章或电子书

企业内网

对于有数据合规要求的组织,可以在内网部署私有实例:

  • 敏感文档不离开企业网络

  • 可集成到现有办公系统

  • 支持定制化配置和品牌化

教育机构

简洁模式特别适合学校或培训机构:

  • 为师生提供无干扰的工具环境

  • 无需担心学生信息泄露

  • 零维护成本

同类项目对比

市面上还有一些类似的PDF工具,我简单对比一下:

项目 运行方式 开源 部署 功能范围
BentoPDF 纯浏览器端 是(AGPLv3) 静态资源/Docker 40+工具
Stirling-PDF 需要后端服务 是(Apache 2.0) Docker/Java 80+工具,更全面
PDF.js 纯浏览器端 是(Apache 2.0) 库形式集成 仅查看和渲染
iLovePDF 云端处理 否 SaaS服务 功能丰富,但收费
Smallpdf 云端处理 否 SaaS服务 功能丰富,但有限制

差异化分析:

Stirling-PDF功能更全面(支持OCR、签名验证等高级特性),但需要部署完整的后端服务(Spring Boot + Docker),资源占用更高。

BentoPDF的优势在于部署简单(仅需静态服务器)和隐私保护(文件不上传),适合对数据安全有严格要求但功能需求相对基础的场景。

如果你需要更高级的PDF处理能力且有服务器资源,可以考虑Stirling-PDF;如果优先考虑隐私和部署便捷性,BentoPDF是更合适的选择。

使用体验

我用BentoPDF处理了几个实际任务:

合并10份合同文件:拖入文件后调整顺序,点击合并,整个过程不到5秒,文件直接下载到本地。

给设计稿批量加水印:支持自定义文字水印的位置、透明度和旋转角度,批量处理20个文件用时不到1分钟。

压缩大文件:将一份15MB的扫描PDF压缩到3MB,画质损失不明显,方便通过邮件发送。

OCR识别扫描件:测试了一份中文扫描合同,识别准确率基本满足需求,可以搜索和复制文本。

整体来看,界面简洁直观,操作逻辑清晰。由于在本地处理,响应速度明显快于云端工具。唯一的限制是处理大文件(如100MB+的PDF)时,浏览器可能会占用较多内存,但这是客户端方案的共性问题。

总结

作为一名经常接触各类效率工具的产品经理,我认为BentoPDF在以下几个维度表现突出:

隐私保护:零上传的架构设计是其最大卖点,特别适合处理包含敏感信息的文档。

功能完整性:40+工具覆盖了日常工作中90%的PDF处理需求,基本可以替代付费工具。

部署灵活性:既可以在线使用,也可以通过Docker快速部署到本地或内网,适应不同场景。

开源透明:代码开源且遵循AGPLv3协议,用户可以审计代码、自行修改或贡献功能。

适用人群:

  • 对数据隐私有较高要求的个人用户

  • 需要内网部署PDF工具的企业团队

  • 希望自建工具而非依赖SaaS服务的开发者

局限性:

  • 不适合处理超大文件(受浏览器内存限制)

  • 部分高级功能(如签名验证、批量OCR)不如专业后端方案

  • 界面和交互相对简洁,缺少一些高级用户可能需要的细粒度控制

如果你正在寻找一款可靠、免费且尊重隐私的PDF工具,不妨试试BentoPDF。无论是日常使用还是企业部署,它都是一个值得考虑的选择。

声明:本站原创文章文字版权归本站所有,转载务必注明作者和出处;本站转载文章仅仅代表原作者观点,不代表本站立场,图文版权归原作者所有。如有侵权,请联系我们删除。
未经允许不得转载:BentoPDF:一款真正零上传的浏览器端PDF工具箱,开源可自部署
#BentoPDF #PDF工具箱 #PDF转换 
收藏 1
MiniMax M2 上线:顶级代码与 Agent 能力,仅 Claude 价格的 8%
Claude Code 2.0.27 发布:Claude Code Web 、sandbox(沙盒)、 Claude Agent SDK
推荐阅读
  • AIClient-2-API:一键把所有AI接口转成OpenAI标准格式
  • AiNiee:开源AI翻译工具,完美解决游戏、小说、字幕、文档的批量翻译
  • Kode:命令行里的多模型 AI 助手(使用体验与亮点解析)
  • Codexia:开源桌面级 AI 编程助手,搭配GPT-5-Codex让你的开发效率瞬间开挂
  • SurfSense:私人AI研究助手,私有版的NotebookLM 和 Perplexity开源平替,
评论 (0)
请登录后发表评论
分类精选
Composio:让AI Agent自动完成工作任务,能让AI一键操控你的所有软件
3855 2周前
OpenSpec:比 Cursor Plan 更聪明?试试这款让 AI 编码更靠谱的规范驱动工具
3831 1周前
WeKnora:终于等到了腾讯ima的开源知识库框架,用 API 轻松打造本地智能文档检索
2886 1月前
SurfSense:私人AI研究助手,私有版的NotebookLM 和 Perplexity开源平替,
2689 1周前
KrillinAI:开源AI视频翻译配音工具,100种语言双向翻译,一键部署全流程
2452 1周前
iFlow CLI:让命令行终端不止于编程的AI效率开源神器
2330 2月前
SpecKit:从想法到代码只需5步?这个开源框架把规范驱动开发变成了现实
2290 2周前
FlyCut Caption:本地化开源智能视频多语言字幕识别与编辑工具
1836 1月前
PandaWiki:手把手教你用这款开源神器,3分钟搭建你的专属AI知识库!
1766 3月前
NeuTTS Air:首个可离线运行的"拟人语音克隆”TTS模型
1759 2周前

文章目录

关注「苏米客」公众号

订阅推送更及时,手机查看更方便
分类排行
1 BentoPDF:一款真正零上传的浏览器端PDF工具箱,开源可自部署
2 Prompt Optimizer:一键优化提示词,让你的AI输出质量飙升!
3 Ladybird:GitHub 热榜第一!Atlas、Comet 浏览器开源版来了!
4 从 Fish-Speech 到 OpenAudio:开源 TTS 正在进入情感表达时代
5 AipexBase:国产首个 AI 原生后端开源平台来了,让 AI Coding直接起飞!
6 AingDesk:一站式本地AI桌面平台,3分钟部署大模型,免费开源可离线运行
7 LangFlow:可视化构建 AI 工作流的开源框架,快速搭建属于你的智能体应用
8 Stagehand:AI浏览器自动化神器,告别繁琐的网页操作!
9 KrillinAI:开源AI视频翻译配音工具,100种语言双向翻译,一键部署全流程
10 SurfSense:私人AI研究助手,私有版的NotebookLM 和 Perplexity开源平替,
©2015-2024 苏米客XMSUMI 版权所有 · WWW.XMSUMI.COM 闽ICP备14005900号-6
程序库 免费影视APP 花式玩客 免费字体下载 产品经理导航 Axure RP 10 免费Axure模板 Axure原型设计 Axure元件库下载 申请友联