veil - PDF 暗色模式工具

veil - PDF 暗色模式工具

veil是一个开源 PDF 阅读器,提供智能暗色模式,在反转文字颜色的同时保留图片、图表与示意图的原始色彩。它面向需要在暗光环境下阅读 PDF 的用户,尤其适合包含大量图片与扫描件的研究文档。本项目基于 PDF.js 逐页渲染,再通过 CSS 反色生成暗色背景,并用第二个 canvas 在反色区域还原原始图片像素。OCR 能力由 Tesseract.js 在后台完成,识别文本会成为可选中的图层;所有运行时库、字体与 OCR 模型均随仓库版本化并从本项目自身域名提供,浏览器不产生任何第三方运行时请求。项目以可安装的 PWA 形式交付,支持离线运行,全部逻辑在客户端完成,无需服务器。 核心功能 智能暗色模式:文字反色,图片与图表保留原色。 逐页覆盖:可对任意页面强制暗色或亮色,导出时同样生效。 可选文本层:跨字体与字重提供干净的复制粘贴。 图片内 OCR:对原生 PDF 中的图片做 OCR,图表标签、坐标轴文字与图注变为可选中;按住 Option/Alt 拖动可选取纵向文字。 扫描件识别:自动检测扫描文档并在后台执行整页 OCR。 已有暗色页识别:自动跳过本身为暗色的页面(如幻灯片、暗色主题)。 导出 PDF:导出时烘焙暗色模式,保留可选文本、可用链接与文档书签;文本导出支持 22 种书写系统。 链接与大纲保留:外部链接与内部导航均可用,嵌套书签层级、展开/收起状态与内部目标均被保留。 原生缩放:借助 PDF.js 原生重渲染,任意缩放级别下文字清晰。 离线 PWA:可安装、支持离线、纯客户端运行。 运行效果与使用示例 在线体验地址为 https://veil.simoneamico.com。本地开发可执行 npm install 后运行 npm test(完整性检查 + 412 个单元测试)、npm run test:e2e(86 个浏览器端测试,基于 Playwright)与 npm run serve(http://localhost:8000)。项目共 498 项测试,涵盖视觉回归截图、导出往返校验、离线运行时校验与性能基准。  

查看原文
分享到:

相关推荐

泰坦军团公布 P2410R3 显示器:23.8" QHD 180Hz Fast IPS

35分钟前

福莱新材:实控人拟向世运电路协议转让5%股份

2小时前

在 1024 字节里塞进一个 Python 解释器

2小时前

解放军这次赴俄演习,没放一枪一炮,却把西方媒体整不会了

2小时前