# offline-pdf-tools **Repository Path**: opopi/offline-pdf-tools ## Basic Information - **Project Name**: offline-pdf-tools - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-30 - **Last Updated**: 2026-09-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 📦 离线PDF工具箱 V7.1 > 纯离线 · 零上传 · 全免费 · 免安装 · 全平台通用 一个完全运行在浏览器端的 PDF 处理工具集。**现已升级为 40 项功能**,无需安装软件,无需上传文件,打开就能用。 通吃 **Windows、Linux、macOS、安卓、iOS、国产麒麟系统**——只要有浏览器,它就能运行。 --- ## 📦 更新日志 ### [V7.1] - 2026-09-15 #### 修复 - 修复**图片转PDF**模块导入 PDF 后导出失败的问题:PDF 拆出的页面被误当成真实图片文件,现通过判断文件类型正确区分处理路径。 - 修复** 批注**模块,圆角矩形导出时变为矩形的Bug,新增图形拖拽手柄,同时对各个图形的参数作了调整。 #### 优化 - 优化**CA 签章查看**模块:在左侧加了导航栏,方便查看多页签章。 ### [V7.0] - 2026-09-13 #### 新增 - 🗑️ **自动删除空白页**:自动检测 PDF 中的疑似空白页(非白色像素比例低于阈值),仅预览检测到的空白页供用户确认,支持灵敏度调节、全选/反选,一键删除并保存为去除空白页的新 PDF。书签将保留。 - 📖 **小册子拆分**:将骑马订装订的扫描件(一张图含两页并排)自动拆分为单页,并按正确页码顺序重排。支持自动检测切分方向(左右/上下)、拖拽调整扫描图顺序、逐页旋转,适用于拆开订书钉后用 A3 扫描仪扫描的文档。 - 🖋️ **CA 签章查看**:打开带数字签名的 PDF,自动列出所有签名域(名称、页码、外观),并在页面上用红框高亮签名位置。感谢 GitHub 用户 [gitca233](https://github.com/gitca233/offline-pdf-tools) 贡献此模块。 #### 优化 - **常规合并新增发票模式**:勾选后逐文件检测,对 pdf-lib 复制后内容丢失的特殊 PDF(如京东发票)自动转为图片合并,正常文件仍保留矢量文字,兼顾兼容性与清晰度。 - **常规合并支持图片与 PDF 混合合并**:图片自动等比缩放居中放入 A4 页面,按列表顺序与 PDF 合并,并跳过发票检测以节省算力。 - **添加页码模块增强**: - 新增“从第 X 页开始编页码”功能,适用于封面不编页码、不显示页码的场景。 - 新增“翻转左右页码位置”按钮,可手动调节奇偶页页码左右位置,解决双面打印时页码位置不符合预期的问题。 - **图章混合模式**:添加图章和扇形骑缝章两个模块新增 3 种混合模式——**常规**(直接覆盖页面)、**正片叠底**(模拟真实盖章效果,白底印章最佳)、**变暗**(白底纯红印章接近正片叠底效果)。用户可根据印章类型和页面背景选择最佳模式。 - **拆分对开页新增 1X 模式**:用于生成体积更小的 PDF 文件。 - **图片转 PDF 大幅优化**:未旋转的 JPG/PNG 图片直接嵌入原文件,不再经过 Canvas 转码,转换速度显著提升,JPG 转出的 PDF 体积不再膨胀数倍。 - **批注功能增强**:新增圆形、椭圆、圆角矩形、填充框等标记工具,边框色与填充色独立设置,填充透明度独立调节,工具参数按需显示,操作更聚焦。 - **模拟扫描件模块调整**:旋转控制改为“最大偏离幅度”(-2~2°,默认 0.3°),所有页面统一使用同一个角度,调整幅度时所有页面统一调整,移除了手动微调单页角度功能,导出结果与预览完全一致。 - **PDF 压缩支持限定目标体积**:设定期望大小后,程序自动迭代寻找最清晰的压缩参数,在体积达标的前提下尽量保留画质。 - **按书签炸开支持选择拆分层级**:可指定最大拆分层级(1 代表一级书签,2 代表二级书签),按需控制拆分深度,避免层级过深导致文件过多。 #### 修复 - 修复**删除页面**模块中,点击图片右上角放大镜图标无预览的问题。 - 修复**加密和解密**模块在某些情况下失败的问题。 - 修复**扇形骑缝章**从第 2 页开始印章上出现黑线的问题。原因是切片坐标使用小数,导致 PNG 透明边缘中的黑色像素被切到。修复后坐标全部取整并关闭图片平滑,黑线消失。 - 修复**按书签炸开**模块,炸开失败:失败: seqNum is not defined的问题,同时添加了最大拆分层级 - 修复**图片转PDF**模块旋转图片时逆时针方向画面被裁切、多次旋转后边缘出现黑边的问题,重写旋转逻辑,任意方向旋转均完整保留画面且边缘干净。 - 修复**页面滤镜**模块导出 PDF 时因渲染分辨率过低导致画面模糊(马赛克)的问题,现在输出清晰度与原文件一致。 ### [V6.5] - 2026-08-31 #### 新增 - 🔐 **PDF加密**:支持为 PDF 文件添加打开密码和权限密码,可限制打印、复制、编辑、注释等操作。基于 `@cantoo/pdf-lib` 实现,加密后文件内容和排版保持不变,使用 `useObjectStreams: false` 确保最大兼容性。 - 📑 **按书签炸开增加序号命名**:在每个拆分文件前按顺序添加序号,序号位数根据书签总数自动调整(如 35 个书签时自动补零为 01、02…),确保文件按书签顺序正确排列。 #### 优化 - **PDF解密模块大幅改进**:利用 `@cantoo/pdf-lib` 的带密码加载能力,解密后文件**保留原始矢量文字、书签和元数据**,体积几乎不变,不再需要逐页光栅化重编码,彻底解决此前解密后清晰度下降的问题。 - **加密模块交互优化**:权限设置区域根据权限密码输入框状态自动启用/禁用(无权限密码时变灰并提示"需设置权限密码后才生效");打印权限改为单选按钮,操作更直观。 - **顶部标题栏**:添加跳转和动画效果,提升视觉体验。 - **主页交互反馈**:在主页时再次点击 Logo 或"所有工具"按钮,页面会轻微抖动,提示用户已在主页。 - **全站 UI 图标升级**:将所有 Emoji 图标替换为 SVG 图标,确保在国产信创系统(麒麟、UOS)上正确显示,不再出现方框或乱码。 - **PDF 扁平化新增页面大小选项**:可选择**原始尺寸**或**统一为 A4**,修复此前扁平化后页面被放大的问题。 - **添加页码支持自定义颜色**:页码颜色可自由指定,满足不同文档的视觉需求。 #### 修复 - 修复 PDF 加密模块因 `userPassword` 与 `ownerPassword` 混淆导致"只设权限密码却要求打开密码"的问题。 - 修复 PDF 解密模块因加载选项格式不兼容 `@cantoo/pdf-lib` 导致报错的问题。 - 修复加密模块打印权限读取方式(由下拉框改为单选按钮)。 - 修复从其他模块返回主页时错误触发抖动的问题。 - 修复**页面重排、页面旋转·批量、页面旋转·逐页**这 3 个模块中,点击图片放大镜后不显示大图的 Bug。 - 修复 **PDF 扁平化**模块处理后页面大小改变的问题(页面尺寸被错误使用为渲染像素尺寸)。 - 修复 **PDF 压缩**模块压缩后页面大小改变的同类问题。 - 修复添加页码模块预览与实际生成时颜色不一致的问题。 #### 文字与交互改进 - 将界面中的"上传 PDF"统一改为"打开本地 PDF","下载"改为"保存",避免用户误以为文件需要上传到服务器,进一步强化**纯离线、零上传**的产品定位。 #### 依赖更新 - **替换 `pdf-lib.min.js` 为 `@cantoo/pdf-lib`**:新增文档加密/解密、带密码加载已加密 PDF、SVG 绘制等能力,并持续合并原 pdf-lib 的 PR 和 bug 修复,兼容性更佳。 ### [V6.0 · 35 项版] - 2026-08-06 #### 新增(在 V5.0 基础上扩展至 35 项) - 📄 **生成空白 PDF**:按指定页数 / 尺寸生成纯空白 PDF,便于拼接占位。 - 📄 **补齐空白页**:批量补齐,使每个文档页数达到指定值(如装订对齐)。 - ✂️ **裁剪白边**:自动检测并裁掉页面四周的空白边距,输出紧凑版 PDF(可设留白阈值与边距)。 - 📏 **统一页面大小**:将不同尺寸的页面统一为同一页面尺寸(A4 / 自定义)。 - 🪪 **删除书签**:一键移除 PDF 大纲(书签树),不改变页面内容。 - 🔢 **Bates 编页**:按法律文书惯例为每页添加连续 Bates 编号(前缀 + 编号 + 后缀)。 - 🪡 **扇形骑缝章**:沿订口生成沿中缝分布的扇形骑缝章效果,常用于合同骑缝防伪。 - 📄 **PDF 扁平化**:将表单字段、注释、图层合并为静态内容,防止被二次编辑。 - 🖨️ **模拟扫描件**:将清晰 PDF 处理成类似真实扫描件的效果(噪点 / 模糊 / 阴影等),用于演示或脱敏。 - 🖊️ **批注**:在 PDF 上添加高亮、下划线、文本框等批注。 - 🧭 **倾斜校正(Deskew)**:自动或手动检测页面倾斜角度(±10° 内投影直方图法自动搜索,或 0.1° 步进手动微调),校正后自动裁剪黑/白边并居中。 - 🟦 **工程蓝图**:将任意 PDF 转换为蓝图风格(蓝底白线),支持彩色扫描件、灰度图纸、黑白线条图自动适配。可调节背景蓝深度和线条亮度,可选锐化增强模糊图纸清晰度,右侧实时预览所见即所得。转换后文件为纯图像,文字不可选中/搜索。 #### 优化 - 界面细节与样式微调(阴影、圆角、过渡曲线),并新增 `prefers-reduced-motion` 降低动效支持。 - **PDF 压缩支持保留原书签**:压缩后自动重建完整大纲树,支持多级嵌套书签,点击目录可跳转到对应页面。使用底层 PDF 对象构建,兼容所有 pdf‑lib 版本及 Acrobat、Chrome 等主流阅读器,已通过 Acrobat 兼容性专项验证 - **PDF 压缩保留书签样式**:压缩模块重建大纲时,现已同步保留书签的**颜色、加粗、斜体**样式,与重建大纲模块一致 - **图片转 PDF 支持混合上传**:可同时选择图片与 PDF,上传的 PDF 会自动**逐页展开**并插入到预览列表(按选择顺序排列),与图片统一拼合输出 - 常规拆分「多组范围」改为多行文本输入框,每行一组页码范围,操作更直观 - 蓝图晒印新增分辨率选项(最高 12× / 864 DPI),满足工程打印需求 - 图片转 PDF 文件名排序改为**自然顺序**(如 `1,2,…,10,11,12` 而非字典序 `1,10,11,12,2,…`),升序/降序更准确 - **修复 PDF 转图片中文(含数字)不显示的问题**:此前离线环境下 CID 字体(如 12306 电子发票)因 CMap 解析失败导致整段文字丢失。现内置 `cmaps-data.js`(169KB,含 `UniGB-UCS2-H`、`Adobe-GB1-UCS2`、`GBK-EUC-H`、`GBK2K-H`、`GBKp-EUC-H` 5 个简体横向核心 CMap),并通过自定义 `CMapReaderFactory` 配合 `useWorkerFetch: false`,由主线程直接读取内嵌 CMap 数据,彻底实现离线中文渲染,无需联网 - 内存与性能优化(针对大文件场景): - 提取图片模块重新加载时自动释放上次的 ObjectURL,避免连续处理多文件内存累积 - PDF 转图片改为按需重渲染,不再常驻全部全分辨率 Canvas,几百页大文件内存大幅下降 - 大文件加载去掉冗余的 ArrayBuffer 复制,峰值内存减半 - 多项界面细节调整:头部跨平台提示优化、导航栏自适应、按钮样式统一等 #### 修复 - 修复常规合并模块加载损坏 PDF 时静默失败的问题,增加错误文件提示弹窗 - 修复按书签拆分/炸开模块无法识别具名目标(字符串 dest)书签页码的问题 - 修复图片水印模块输出 PDF 时透明度丢失及旋转时图片变形的问题 - 修复提取图片模块因兼容性语法导致部分浏览器无法显示图片的问题 - 修复页面拼版、添加图章等多个模块的细节错误 - 修复页码范围输入的容错问题:非法格式(如 `5-`、`-3`、`1-2-3`)、多余/连续逗号(如 `1,,5`)、非数字或小数页码均会**弹窗提示**要求重新输入;已支持全角逗号 `,` 自动转半角 - 修复图片转 PDF 预览中长图遮挡文件名的问题,文件名现固定显示在每张图片下方、始终可见 - 倾斜校正模块修复若干运行期问题:修复 `fileToArrayBuffer` 未定义、`buf` 变量作用域错误、`getImageData` 性能提示(`willReadFrequently`);参考线改为覆盖整个预览框并可调粗细;自动检测与「立即校正」拆分为两步操作 - 修复若干模块体验细节与样式问题,持续提升稳定性 - **拆分对开页稳定性修复**:分割线拖到页面边缘(比例接近 0 或 1)时,切割出的某一半宽/高为 0,原代码会因 `canvas.toBlob` 返回 `null`(导致 `seg.blob.arrayBuffer()` 报错)或 `drawImage(0)` 抛异常而崩溃。现改为在**源头拦截 0 尺寸子画布**(不进入裁剪、也不 clamp 成 1px 废页),边界处自动跳过该半页;循环内保留 `null` 兜底,彻底避免崩溃 ### [V5.0] - 2026-07-23 #### 新增 - **📝 文档信息**:查看和修改 PDF 的标题、作者、主题、关键词等元数据,支持一键清空,不改变文件内容和排版。 - **💥 按书签炸开**:将 PDF 中所有书签(不论层级)拆分为独立文件,支持自定义文件名规则(原文件名前缀、书签名、保留层级、同名自动编号)。 - **🔃 页面旋转 · 逐页**:上传 PDF 后以缩略图形式展示所有页面,在缩略图上直接点击旋转按钮,每页独立选择旋转方向,实时预览效果。 - **💮 添加图章**:上传图章图片,手动拖动定位到页面任意位置,支持设置图章宽度、透明度和旋转角度,每页独立记忆位置。 - **📐 页面拼版**:将多页 PDF 合并到一页上,支持自定义拼版行列数(如 2×2)和排列顺序(横向优先 / 纵向优先)。 - **🖼️ 图片水印**(与文字水印独立):上传 PNG/JPG 图片作为水印,支持手动拖动和平铺,可调缩放、透明度和旋转角度。 - **📸 提取图片**:从 PDF 中提取所有嵌入的位图,支持单张下载或打包为 ZIP。 - **🎨 页面滤镜**:对扫描件进行灰度、黑白二值化、锐化、反相、亮度/对比度调整,多种滤镜可叠加使用,增强清晰度。 #### 修复 - 修复交替合并支持多个文件轮流穿插时清空按钮报错的问题 - 修复发票类 PDF 转图片时部分文字(如印章、表单文本)丢失的问题(增加 `annotationMode: ENABLE` 渲染注释层) - 修复常规拆分"页码范围"模式下载格式不正确的问题 - 修复图片转PDF模块图片上传后顺序随机的问题,新增拖拽排序和批量移动 - 修复添加水印时图片旋转角度与预览不一致的问题 #### 优化 - **界面全新改版**:新增"所有工具"主页,按功能分类(页面操作、格式转换、增强功能)展示卡片,点击卡片进入功能模块,顶部导航栏动态切换 - **图片转PDF全面升级**:新增按文件名升序/降序排列;新增自定义页边距(上/下/左/右)和居中选项,支持一键设为0边距或国标边距;新增缩略图旋转按钮(逆时针90°、顺时针90°、旋转180°);新增大图预览功能 - **常规拆分新增多组范围**:支持用竖线 `|` 分隔多组范围(如 `1,2|3-5|6`),一次拆分出多个文件并打包为 ZIP - **页面重排新增大图预览**:点击缩略图右上角放大镜,弹出高清大图,支持键盘 ← → 翻页、Esc 关闭 - **页面旋转新增预览**:上传 PDF 后自动显示所有页面的缩略图,支持大图预览和键盘翻页 - **添加页码增加起始页码**:支持从任意数字开始编号 - **文字水印/图片水印支持手动拖动**:在预览画布上拖动水印即可调整位置,所见即所得 - 全角逗号自动转换覆盖更多输入场景 - 各模块增加简洁的功能说明 ### [V4.0] - 2026-07-12 - **新增**:页面倒序、添加页码、添加水印、PDF解密 - **修复**:元数据丢失、keywords 类型错误、空白页报错、图片顺序随机等问题 - **优化**:拖拽排序、批量移动、快捷键、界面布局等 ### [V3.0] - 2026-07-09 - **新增**:按书签拆分、PDF 压缩 - **优化**:3 个 HTML 合并为 1 个、拆分下载改为 ZIP 打包、界面全新改版 ### [V1.0] - 2026-06-11 - 首次发布:合并、拆分、旋转、删除、PDF转图片、图片转PDF、页面重排、拆分对开页、交替合并 --- ## 🗂️ 文件说明 | 文件名 | 包含功能 | |:---|:---| | `离线PDF工具箱V6.5-37项功能-单文件版.html` | **全部 37 项功能**(单文件版) | > 只需下载 1 个 HTML 文件即可。 --- ## 📂 一、页面管理类(9项) > 主打 PDF 页面的基础增删、排序、拆分,解决文档整理的第一步需求。 ### 🔗 1. 常规合并:30秒,不用求人 多份 PDF 合并成一份,支持拖拽调整文件顺序,**新增"按文件名排序"按钮**,应对系统乱序问题。谁在前谁在后,你说了算。点一下按钮,合并好的文件就下载了。 > **场景**:月底报销,一堆电子发票、申请单、支付截图,领导让整理成一个 PDF 归档。全选文件拖进去,排好顺序,一键完事儿,全程 30 秒。 --- ### 🔀 2. 交替合并:A-B-C-… 轮流穿插 交替规则:文件1第1页 → 文件2第1页 → 文件3第1页 … 再回到文件1第2页,循环直到所有页面用完。如果某个文件页数不够就自动跳过,继续从其他文件中取页。支持任意数量文件。 > **场景**:正面和反面的扫描件分别存成了两个 PDF,拖进去交替合并,直接合成一本顺序正确的电子书。山东网友提出的这个需求,虽然小众,但真有人用得上。 --- ### ✂️ 3. 常规拆分:想留哪页留哪页,五种拆法随便选 | 拆分模式 | 说明 | |---|---| | **页码范围** | 输入 `3-8`,只把这几页抽出来,生成一个文件 | | **固定页数** | 每 N 页自动切分成一个文件 | | **全部单页** | 把 PDF 炸开,每页独立成一个文件 | | **奇偶拆分** | 奇数页一个 PDF,偶数页一个 PDF | | **多组范围** 🆕 | 用 `\|` 分隔多组范围,一次拆出多份文件打包为 ZIP | > **场景**:上游发来几百页产品手册,客户只需要其中五六页。输入页码范围,几秒钟提取出来,文件小、传输快、体验好。 --- ### 📑 4. 按书签拆分:自动识别目录,一键拆章节 上传包含书签(大纲/目录)的 PDF,自动读取书签结构并以树形列表展示。勾选父级章节会自动联动子级,点击拆分即可将选中章节合并导出为一个新 PDF。**新增"复制书签"按钮**,可提取目录文本(含/不含页码)。 > **场景**:一本几百页的技术手册,想单独把第 3 章和第 5 章发给同事参考。上传后勾选对应章节,一键导出,不用手动翻页码。 --- ### 💥 5. 按书签炸开 将 PDF 中所有书签(不论层级)拆分为独立文件。支持自定义文件名规则:原文件名前缀、书签名、保留层级(父\_子\_孙)、同名自动添加 `_1, _2` 序号。最终打包为 ZIP 下载。 > **场景**:一本带目录的电子书,想每个章节单独保存为一个文件。上传后自动识别所有书签,一键炸开,每个章节就是一个独立的 PDF。 --- ### 📚 6. 页面重排:像整理相册一样 把所有 PDF 的页面像相册一样平铺展示缩略图。手指拖一拖调整顺序,不想要的勾选删除,还能一键插入空白页。支持点击图片切换勾选、批量拖拽移动、大图预览(点击放大镜,键盘 ← → 翻页,Esc 关闭)。 > **场景**:入职要交毕业证、学位证、成绩单、四六级证书,按指定顺序合成一个 PDF。全部拖进来,拖拽排好,点导出完事儿。 --- ### 🔃 7. 页面倒序:一键反转 上传 PDF,点击按钮即可将页面顺序完全反转:第1页变最后一页,最后一页变第1页。使用 pdf-lib 原生操作,不改变页面内容,保持原始文件质量。 > **场景**:扫描纸质书时从后往前扫了,顺序全反了。拖进来点一下,一键倒序,不用重新扫描。 --- ### 📄 8. 补齐空白页 🆕 V6.0 自动检测 PDF 总页数。若为奇数页,则在文档末尾自动补齐一张空白页。**支持自定义空白页尺寸**(与原页同尺寸、A4 或 Letter)。这是打印装订的刚需功能。 > **场景**:文档需要双面打印并装订成册,但总页数是奇数。补齐一张空白页,避免最后一页背面空白,装订更美观。 --- ### 🗑️ 9. 删除页面:发出去之前,抢救一下 输入要删的页码,比如 `2,4,6-8`,这些页面被彻底移除,生成一个干干净净的新文件。**新增预览界面**,点击缩略图即可选中删除,所见即所得。 > **场景**:方案发出去才发现里面夹了一页内部批注和两页空白页。不用回原文档重新导出,几秒钟抢救完毕。 --- ## 📐 二、页面调整类(8项) > 解决 PDF 页面尺寸不一、方向歪斜、格式不规范的问题。 ### 🔄 10. 页面旋转 · 批量:脖子终于不疼了 上传文件,输入要旋转的页码(留空就是全部页面),选择向左或向右 90° 或旋转 180°,下载。横着的内容、倒置的扫描件、混排的表格页面,统统转正。上传后自动显示所有页面的缩略图预览,支持大图预览和键盘翻页。 > **场景**:正文是竖版,中间夹了几页横排表格,歪着脑袋看半天。拖进去转一下就规规矩矩了。 --- ### ↩️ 11. 页面旋转 · 逐页 批量旋转的升级版。上传 PDF 后以缩略图形式展示所有页面。在缩略图上直接点击旋转按钮(逆时针90°、顺时针90°、旋转180°),每页独立选择旋转方向,底部信息栏实时显示当前旋转状态。调整完毕后点击保存并下载。 > **场景**:一份扫描件里有些页面横着、有些倒着,需要逐页分别调整方向。预览每页效果,哪页不对调哪页。 --- ### 📖 12. 拆分对开页:精准的裁纸刀 上传 PDF 后,可切换预览每页,为每页独立选择**左右拆分、上下拆分或不切割模式**。通过拖拽预览画布上的红色分割线,实时调整裁剪比例,并借助标尺与浮动数值精确定位。支持一键将当前比例模式应用到全部页面。 > **场景**:书籍拍照是两个面一起拍的,想沿中线分割成单页。上传后拉一条分割线,导出就是两张独立的页面。老师们用它把 A3 试卷切成 A4,打印超方便。 --- ### 🧭 13. 倾斜校正 🆕 V6.0 针对扫描时产生的物理倾斜进行修正。支持自动检测倾斜角或手动输入角度,将歪斜的页面摆正。**支持实时预览**,确保文字横平竖直,提升阅读体验。 > **场景**:老档案扫描时没放正,文字像比萨斜塔。拖进来校正一下,文档立马精神了。 --- ### 🔲 14. 裁剪白边 🆕 V6.0 自动识别或手动调整裁剪框,去除页面四周多余的白边或黑边。**常用于优化电子书阅读体验**,让文字内容充满屏幕,或者去除扫描仪产生的污迹边缘。 > **场景**:扫描的 PDF 四周留白太多,在手机上看字太小。裁剪一下,文字瞬间变大,阅读舒适。 --- ### 📏 15. 统一页面大小 🆕 V6.0 将 PDF 中所有大小不一的页面**强制统一为目标标准尺寸**(如 A4、A3、Letter)。解决扫描或合并过程中产生的页面尺寸混乱问题,确保打印时格式统一,不会出现"这一页打不下"的尴尬。 > **场景**:合并了多个来源的 PDF,有的宽有的窄。统一成 A4 尺寸,打印出来整整齐齐。 --- ### 📚 16. 页面拼版 将多页内容拼合到一页纸上(如 2×2 表示 4 页拼成 1 页)。可自定义拼版列数×行数和排列顺序(横向优先 / 纵向优先)。最后一组不足时可选择留白或自动跳过。还能给每个格子加上灰色边框,方便后期裁切。 > **场景**:制作讲义时把 4 页 PPT 内容拼到一张 A4 纸上打印;或制作缩略图目录,省纸又高效。 --- ### 📄 17. 生成空白PDF 🆕 V6.0 支持自定义纸张大小(A4、A3 等)、方向(纵向/横向)和页数,快速生成一份标准的空白 PDF 文档。可作为封面、封底或分隔页使用。 > **场景**:想在报告前加一张漂亮的封面,或者需要在章节间加一张空白隔页。一键生成,无需打开 Word。 --- ## 🖼️ 三、格式与图像处理类(7项) > 主打格式转换和扫描件优化,适配不同场景的内容处理需求。 ### 🖼️ 18. PDF转图片:比截图清晰多了 每一页生成高清预览图,可选 PNG 或 JPEG 格式,可调画质和分辨率倍率(最高 360DPI,够打印)。单页下载或一键打包下载全部。 > **场景**:领导让把 PDF 里的几页插到 Word 方案里当配图。拖进来,转成高清图片,再拖进 Word,清晰度比截图高得多。 > ⚠️ 如果 PDF 页数多或文件大,建议先用拆分功能提取所需页面再转换,速度更快。 --- ### 🧩 19. 图片转PDF:手机拍的合同,终于有个正经样子了 支持 JPG、PNG、WebP、BMP。所有图片在网格里排列,可拖拽调顺序,勾选删掉不要的。支持缩略图旋转(逆时针90°、顺时针90°、旋转180°)和大图预览。导出时自动放置在 A4 纸上,可自定义页边距(上/下/左/右)和居中方式,一键设0边距或国标边距。 快捷键:`Ctrl+A` 全选,`Delete` 删除选中图片。支持批量拖拽移动。 > **场景**:手机拍了一堆合同页,想拼成 PDF 发给客户。直接拖进来,旋转调正,几秒钟生成专业文档。 --- ### 📐 20. PDF扁平化 🆕 V6.0 将 PDF 中的表单填写内容、注释、批注等动态元素**固化为静态内容**。防止 PDF 在其他设备或阅读器中打开时,因缺少字体或表单支持导致格式错乱、内容消失。固化后的内容无法再编辑,适合归档。 > **场景**:填好了一张 PDF 申请表,发给对方后担心对方电脑不支持表单显示。扁平化一下,变成普通 PDF,显示永远一致。 --- ### 📸 21. 提取图片 从 PDF 中自动扫描并提取所有嵌入的位图(照片、图章、Logo 等)。提取出的图片以缩略图网格展示,可单张下载,也可一键打包为 ZIP。矢量图形无法提取,页面会给出提示。 > **场景**:收到一份含多张产品图片的 PDF,想把原图拿出来做素材。上传后自动抽取所有图片,无需手动截图。 --- ### 🎨 22. 页面滤镜 彩色扫描件转黑白、增强清晰度的利器。支持同时启用多种滤镜:亮度/对比度调节、锐化(强度可调)、灰度去色、黑白阈值二值化、反相。所有滤镜按科学顺序叠加,右侧实时预览效果。 > **场景**:发黄的旧合同、模糊的发票,扫描后文字不够清晰。拖进来,勾选黑白+锐化,一键生成清晰锐利的文档。 --- ### 🟦 23. 工程蓝图 🆕 V6.0 一键将普通 PDF 转换为**蓝底白线**的工程晒图效果。模拟传统工程蓝图的视觉风格,常用于工程设计、建筑图纸的归档展示,极具专业辨识度。 > **场景**:给甲方汇报方案,把普通的 CAD 导出图转换成蓝图风格,瞬间提升专业感和怀旧氛围。 --- ### 🖨️ 24. 模拟扫描件 🆕 V6.0 为 PDF 页面添加扫描件的纹理、噪点和轻微扭曲效果,**模拟真实物理扫描的质感**。可用于制作"复印件"效果,或者在数字化文档中还原纸质文件的观感。 > **场景**:电子文档需要打印出来复印,或者想让文档看起来像是刚扫描出来的,增加真实感。 --- ## 🔖 四、标注与编号类(7项) > 办公场景刚需,覆盖合同、标书、论文等各类文档的标注需求。 ### 🔢 25. 添加页码 支持自定义页码样式(`1/10`、`Page 1 of 10`、`— 1 —` 等),可选择字体(Times Roman / Helvetica / Courier)、字号(8-24pt)、加粗、水平位置(左/中/右)、距底部和左右边距。支持奇偶页对称和起始页码设置。右侧实时预览可翻页查看所有页面效果。 > **场景**:给标书、论文添加页码,双面打印时设置奇偶页对称。支持从任意页码开始编号。 --- ### ⚖️ 26. Bates编页 🆕 V6.0 法律与档案领域的专业功能。上传多个 PDF,为每一页添加**全局唯一的连续编号**(如 `CASE-2026-0001`、`CASE-2026-0002`…)。支持跨文件连续编号,确保海量文档在流转、举证过程中顺序唯一、不可混淆。 > **场景**:律师事务所准备诉讼材料,数百份证据需要统一编号。Bates 编页是行业标准做法,防止缺页或顺序错乱。 --- ### 💧 27. 文字水印 支持自定义文字内容、字体(含黑体)、字号、颜色(预设色块+自定义取色)、透明度、旋转角度。支持手动拖动定位或平铺模式(可调间距)。右侧实时预览,所见即所得。 > **场景**:给合同、方案添加"机密文件"水印,手动拖到合适位置,一键应用到所有页面。 --- ### 🖼️ 28. 图片水印 上传 PNG 或 JPG 图片作为水印。同样支持手动拖动定位和平铺模式,可调节缩放比例、透明度和旋转角度。把你的公司 Logo 拖到文件正中间,调个透明度,专业又防伪。 > **场景**:在对外宣传资料上批量添加公司 logo 水印,位置、大小自己控制,不走样。 --- ### 💮 29. 添加图章 上传图章图片(如公章、签名),手动拖动定位到页面任意位置。支持设置图章宽度(mm)、透明度和旋转角度。**每页独立记忆图章位置和大小**——翻到第二页,图章可以盖在另一个位置;翻回第一页,图章还在原来那个位置。批量处理,一次下载。 > **场景**:在合同、审批单上盖上公司公章或骑缝章,精准定位,每页位置可不同,一步到位。 --- ### 🔻 30. 扇形骑缝章 🆕 V6.0 **合同防伪的终极形态。** 自动将一枚图章切割并分布到多个页面的边缘(通常是右侧),打印后沿折线撕开,各页边缘的文字/图案能完美拼接还原。**这是物理骑缝章的数字模拟**,极大增强了合同的防篡改性和法律效力。 > **场景**:签订多页合同,需要加盖骑缝章。传统方式是打印后人工盖章,现在可以在 PDF 中直接生成完美的扇形骑缝章效果,打印即成品。 --- ### ✍️ 31. 批注 🆕 V6.0 支持添加视觉层面的批注,包括**高亮**、**下划线**、**文本框**和**矩形框**。批注作为视觉元素叠加在页面上,方便审阅者标记重点。*注:此为视觉叠加,非 PDF 标准交互式注释。* > **场景**:审阅文档时,用高亮标出关键条款,用矩形框圈出错误之处,用文本框写上修改意见,一目了然。 --- ## 🛡️ 五、安全与信息类(4项) > 主打文档安全和信息管理,处理敏感文件时更放心。 ### 📝 32. 文档信息 查看和修改 PDF 文件的标题、作者、主题、关键词等元数据。上传后自动读取现有信息,在编辑框中直接修改,支持一键清空所有元数据。修改后保存,文件内容和排版完全不变。 > **场景**:对外发布文档前,清除或修改文档属性中的作者、公司名等隐私信息。 --- ### 🗑️ 33. 删除书签 🆕 V6.0 一键清除 PDF 中自带的所有书签(大纲/目录)结构。**区别于"按书签拆分"**,此功能旨在彻底移除目录信息,常用于清理文档痕迹或简化文件结构。 > **场景**:收到一份带详细内部目录的 PDF,对外发布时需要删除这些目录,防止信息泄露或结构混乱。 --- ### 📦 34. PDF压缩 通过滑块选择压缩等级(轻度/中度/深度),可手动微调图片质量和分辨率。压缩完成后显示前后体积对比,效果一目了然。**保留原书签等元数据**。 > **场景**:扫描出来的 PDF 动不动几十 MB,发邮件附件受限。拖进来选个中度压缩,体积缩减大半,画质依旧清晰。 --- ### 🔓 35. PDF解密 去除 PDF 文件的权限密码(能看但不能打印/编辑),解除打印、复制限制。如果文件有打开密码,输入正确密码后也能解除。自动检测保护类型,解密后保留元数据。 > **场景**:收到一份 PDF 能看但不能打印,需要打印出来签字。拖进来点一下,限制解除。 --- ## 🚀 如何使用 1. 下载本仓库的所有文件 2. 双击 HTML 文件,用浏览器打开即可使用。 **无需联网,无需安装,打开即用。** --- ## 🛠️ 技术栈 | 库 | 用途 | |:---|:---| | [@cantoo/pdf-lib](https://github.com/cantoo-scribe/pdf-lib) | PDF 文档创建与编辑(含加密/解密/SVG 绘制) | | [pdf.js](https://github.com/mozilla/pdf.js) | PDF 页面渲染与预览 | | [JSZip](https://github.com/Stuk/jszip) | 批量文件打包下载 | | [Twemoji](https://github.com/twitter/twemoji) | SVG 图标 | | 原生 HTML/CSS/JavaScript | 零框架,极致轻量,兼容旧版浏览器 | --- ## 📱 兼容性 * ✅ 现代浏览器:Chrome、Edge、Firefox、Safari * ✅ 国产系统:麒麟(ARM架构)、UOS * ✅ 移动端:安卓、iOS 浏览器 --- ## 🤝 致谢 感谢 52破解论坛和微信公众号"相声的技术备忘录"各位网友的热情反馈和建议! 特别感谢以下网友的功能建议: * 江苏网友:奇偶页拆分 * 山东网友:交替合并 * 广东网友:对开页切分 * 海南网友:页面倒序 * 多位网友:添加页码、水印、图章、压缩、解密…… 你们的一点一滴,让这个工具箱越来越好用! --- ## 📄 开源协议 本工具箱的原创代码(HTML/JS)采用 **MIT License** 开源,详见 [LICENSE](LICENSE) 文件。 所依赖的第三方库遵循各自的协议: - `pdf.js`(含 `pdf.worker.min.js`):Apache License 2.0 - `@cantoo/pdf-lib`:MIT License - `JSZip`:MIT License 或 GPLv3 双协议 - `Twemoji`:CC-BY 4.0 --- ## ⭐ 如果觉得有用 欢迎点个 **Star** 支持一下!有功能建议或使用问题,可以提 Issue,我看到后会第一时间回复。 > 宠粉,我是认真的。