留空则每一页都拆一份;只想拆其中几页就填范围,例如 1-5,9,12-14。
生成的文件按页码编号:材料_p1.pdf、材料_p2.pdf…
选一个 PDF,每一页都会变成独立文件。
它是「拆分」里最省事的一种:不用想页码怎么分段。
| 场景 | 为什么好用 | 备注 |
|---|---|---|
| 发票 / 回单逐张上传 | 一次拆完,逐个上传即可 | 拆完按文件名排序就是页码顺序 |
| 批量盖章 / 签字 | 单页文件好处理、好回传 | 盖章后可再用「PDF 合并」拼回去 |
| 试卷 / 作业按页分发 | 一页一个人,不用手动另存 | 份数多时建议按范围分批 |
| 扫描件按页归档 | 每页一个文件,命名规整 | 扫描件体积大,注意 ZIP 会很大 |
| 只要其中几页 | 填页码范围即可 | 如 1-5,9,12-14 |
页数一多,这三件事就会变得明显。
| 点 | 会怎样 | 怎么应对 |
|---|---|---|
| 份数 = 页数 | 200 页就是 200 个文件 | 超过 200 份会弹确认;建议按页码范围分批拆 |
| ZIP 体积不小 | 扫描件每页仍带完整图片 | 要压体积先压图片再重新转 PDF |
| 文件名要规整 | 几十个文件不好找 | 填好前缀,生成名自带页码 _p1/_p2…,排序即顺序 |
⚠️ 免责声明:请保留原文件。
本工具会把每一页完整复制成独立 PDF,因此总体积不会变小,扫描件尤其明显。
拆分过程不修改你的原 PDF,产出的是新文件;书签、目录与交互表单不会保留。
份数过多(上百份)可能占用较多内存导致浏览器变卡,工具会在超过 200 份时二次确认。
所有处理均在你的浏览器本地完成,文件不会上传到任何服务器,本站也不留存任何副本。
一堆发票要逐张上传、一份试卷要按页分给学生、几十页的扫描件要按页归档——这些场景的共同点是:每一页都要变成独立文件,一页页手动另存能把人逼疯。
「PDF 每页拆一份」就是为这种批量场景准备的:选文件 → 点一下 → 下载一个 ZIP,解压出来就是排好序的单页 PDF。
它具体怎么做的?
① 读取:PDFDocument.load() 载入后读出总页数,显示在按钮上方;
② 确定页码:页码范围留空就是全部页面;填了范围(如 1-5,9,12-14)就只拆这几页;
③ 逐页复制:对每一页新建文档,用 copyPages(src, [页码]) 把这一页连同它的字体与图片资源完整复制到新文件——不是截图,文字仍可选中、清晰度不变;
④ 编号命名:按页码自动编号(材料_p1.pdf、材料_p2.pdf…),解压后按文件名排序就是原本的页码顺序;
⑤ 打包下载:所有单页文件用 JSZip 打成一个 ZIP,一次下载全部带走。
几个实战建议:
· 上传系统逐张收:拆完直接按 _p1、_p2 顺序上传;
· 只要中间几页:填页码范围,别全拆;
· 页数很多:超过 200 份会二次确认,建议分批(先 1-100、再 101-200);
· 体积太大:页面资源被完整复制,要压请先压图片再重新生成 PDF;
· 拆完还要拼回去:用「PDF 合并」按文件名顺序选中即可还原。
最后一句:整个过程都在你自己浏览器里完成,文件不会上传到任何服务器,发票、回单、合同这类敏感文件也放心拆。
怎么处理:
① 载入源文件读出总页数;
② 页码范围留空 = 全部页,否则按 1-5,9,12-14 这类写法解析为 0-based 索引(越界忽略、去重、逆序纠正);
③ 对每个页码新建文档,copyPages(src, [i]) 复制该页(含字体与图片资源)后 addPage();
④ 按 前缀_pN.pdf 命名,全部完成后用 JSZip 打成一个 ZIP 下载。
它不做:不解密带密码的文件、不保留书签/表单、不压缩体积、不改页面内容。原文件不会被修改。
1-5,9 只拆这几页。_pN 自动编号,全部完成后自动打包成一个 ZIP 下载;超过 200 份会二次确认。基于 pdf-lib 的 copyPages 无损复制。附适用场景表与注意事项表。全程浏览器本地处理,文件不上传,适配黑夜模式。
1-3 三页一份)。你填的前缀_p页码.pdf,例如前缀填「发票」,就得到 发票_p1.pdf、发票_p2.pdf…12-14),编号仍按真实页码走,会得到 _p12/_p13/_p14,方便你对应原文档。审核通过后就会展示在留言板上,稍安勿躁~
还没有留言,来抢沙发吧!