WPS能拆分合并,但却是要输入编辑密码,我没有。故写了个脚本来做拆分,顺便附上合并的代码。
代码如下(extract.py)
#!/usr/bin/env python
"""PDF拆分脚本(需要Python3.10+)
Usage::
$ python extract.py <pdf-file>
"""
import os
import sys
from pathlib import Path
# pip install PyMuPDF
import fitz # type:ignore[import-untyped]
SRC_FILE = Path.home() / "Downloads" / "yasi.pdf"
def new_one(pdf: fitz.Document, page_num: int, parent: Path | None = None) -> Path:
target = Path(f"{page_num}.pdf")
if parent is not None:
target = parent / target.name
new_pdf = fitz.Document()
# 用第page_num页生成新的PDF文件
index = page_num - 1
new_pdf.insert_pdf(pdf, from_page=index, to_page=index)
new_pdf.save(target)
return target
def extract(
file: Path,
num: int | None = None,
) -> Path:
"""拆分PDF
:param file: 文件路径
:p