更新日志
信创 PDF 工具箱各版本更新记录:从 V7.1 到 V1.0 的新增、优化与修复内容汇总。
这里按版本汇总工具箱的更新记录。如需下载对应版本,请前往 下载中心。
V7.1 · 40 项功能 最新版本
优化
- 优化CA 签章查看模块:在左侧加了导航栏,方便查看多页签章。
修复
- 修复图片转PDF模块导入 PDF 后导出失败的问题:PDF 拆出的页面被误当成真实图片文件,现通过判断文件类型正确区分处理路径。
- 修复 批注模块,圆角矩形导出时变为矩形的Bug,新增图形拖拽手柄,同时对各个图形的参数作了调整。
V7.0 · 40 项功能
新增
- 🗑️ 自动删除空白页:自动检测 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 · 37 项功能
新增
- 🔐 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 项功能
新增(在 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-H5 个简体横向核心 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 · 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
- 新增:页面倒序、添加页码、添加水印、PDF 解密。
- 修复:元数据丢失、keywords 类型错误、空白页报错、图片顺序随机等问题。
- 优化:拖拽排序、批量移动、快捷键、界面布局等。
V3.0
- 新增:按书签拆分、PDF 压缩。
- 优化:3 个 HTML 合并为 1 个、拆分下载改为 ZIP 打包、界面全新改版。
V1.0
- 首次发布:合并、拆分、旋转、删除、PDF 转图片、图片转 PDF、页面重排、拆分对开页、交替合并。