跳转到主内容
版本发布

42md 知识工具大升级(13)inspect 与 compress:大文件先体检,再一键瘦身

一个扫描版 PDF 一百多兆,一堆无损大图塞进文档几百兆,想发邮件、传网盘、转成 Markdown 之前先压一压,可压缩软件要么得另装一堆工具,要么把画质压花。42md 新增 inspect 和 compress 两个工具:先用 inspect 给源文件做体检,看清体积都堆在哪、哪些能压、哪些已是高效编码,心里有数再动手;compress 一条命令瘦身,PDF、图片常能压到原来的几分之一。纯本地处理,不上传文件、不装额外软件、不消耗 AI 配额。

13 分钟
产品发布文件瘦身体积优化PDF图片

一、为什么要做 inspect 与 compress

整理知识素材时,源文件越攒越大是常事:

  • 从扫描件、PPT 导出的 PDF 动辄一百多兆,丢进 42md 转 Markdown 前,光上传就等很久。
  • 从网页、论文里一张张存下来的配图,多是无损 PNG/TIFF,塞进文档、素材库不知不觉就几百兆。
  • 想压一压,常见的压缩软件要么得先装一堆命令行工具,要么一压就把图压花,分不清「该压的」和「不能动的」。
  • 更麻烦的是不知道体积到底堆在哪——是几张超大无损图,还是已经压过、动了也白动的部分?盲压一通,效果还看不清。

这些都是动手前心里没底造成的反复折腾。42md tools inspect 先给源文件做一次体检,42md tools compress 再按体检结果瘦身,把「看清楚」和「压下去」拆成两步。

二、inspect 与 compress 的特色

  • 先体检,再动手——inspect 把体积按类别拆开摆给你看:多少兆是无损大图(能压)、多少兆已经是高效编码(保留),还给出一个保守的可瘦身预估,压之前就知道大概能省多少。
  • 一条命令压到几分之一——compress 把以无损格式塞进去的大图重新编码成更省体积的形式,PDF、图片都支持,日常阅读的观感基本一致,体积却能降到原来的几分之一。
  • 一个目录批量瘦身——compress 不止能压单个文件,给它一个文件夹就批量处理:自动按类型挑文件、跳过损坏件、并发瘦身,处理完给出省了多少的汇总。默认只处理本层,加 -r 连子目录一起。
  • 已是高效编码就如实告知——inspect 会把「已经压过、动了也白动」的部分单独标出来,compress 原样保留,不会让你误以为「压完还能更小」。
  • 纯本地、免费、零依赖——文件不上传、不经过任何外部服务,也不用额外安装别的压缩工具,装好 42md 就能用,不消耗 AI 配额。
  • 不瞎压、不毁原件——已经是高效编码、压了也不会更小时,直接提示「无可压空间」并保持原文件不动;产物默认另存为新文件,原件始终在。

三、怎么用 · Webapp

inspect 与 compress 目前以命令行为主,网页端入口随产品演进逐步开放。网页用户当前可以先在「我的知识库」里完成转换与导出,源文件的体检与瘦身放到命令行来做。

四、怎么用 · CLI

compress 和 inspect 既能处理单个文件,也能收一个目录批量处理。

单个文件:先体检,再瘦身

先用 inspect 看清体积构成,做到心里有数:

# 体检一个源文件(PDF / 图片)
42md tools inspect 扫描合同.pdf

# 给脚本用的 JSON 输出
42md tools inspect 扫描合同.pdf --json

再用 compress 瘦身:

# 一键瘦身,产物默认存成 <名>_compressed.<后缀>(图片转 .webp),原件不动
42md tools compress 扫描合同.pdf

# 指定输出路径
42md tools compress 扫描合同.pdf -o out/合同-small.pdf

# PDF 可调画质(0-100,默认 50,数值越高越清晰、体积越大)
42md tools compress 扫描合同.pdf --quality 70

一个目录:批量瘦身

文件多的时候,直接把文件夹交给 compress,它就批量处理:按类型挑文件、跳过损坏件、并发瘦身,末尾给出省了多少的汇总。

默认只处理这个文件夹的直接文件,不进子文件夹;要连所有子目录一起处理,加 -r

# 只压 Documents 本层的大 PDF
42md tools compress ~/Documents --type pdf --min-size 50MB

# 连所有子文件夹一起压(递归整棵目录树)
42md tools compress ~/Documents --type pdf --min-size 50MB -r
  • --type 限定类型(compress 支持 pdf / image),不写则这两类都处理;--min-size 聚焦大文件。
  • 批量时坏文件、改了后缀的伪装文件会自动跳过,不拖累其它文件;并发数按机器自动调整。
  • inspect 同样支持收目录,批量体检、估算整批能省多少。

小技巧:

  • 养成「先 inspectcompress」的习惯——体检报告里若大头已是高效编码,就知道这份文件压缩空间有限,不必白忙一场。
  • 转 Markdown 前先压一遍超大 PDF,上传更快;图片素材批量转成更省体积的格式(WebP),网页 / 电子书带图也更轻。

注意事项:

  • 产物默认另存为新文件(PDF 加 _compressed 后缀,图片转 .webp),同名会自动改名,不会覆盖原件。
  • 已是高效编码、压了也不会更小的文件,会直接提示并保持原样,不产出更大的「假压缩」文件。

五、实际演示

一份扫描版 PDF,先体检再瘦身:

$ 42md tools inspect 扫描合同.pdf
扫描合同.pdf  [pdf]  124.1 MB
  93 页
  体积构成:
      111.7 MB  ×101 FlateDecode 可压
        7.2 MB  ×66  FlateDecode 已是高效编码/不支持   ·保留
        2.4 MB  ×10  DCTDecode 已是高效编码/不支持     ·保留
  预估可瘦身约 95.0 MB → ~29.1 MB(compress 实际为准)

$ 42md tools compress 扫描合同.pdf
✓ 已瘦身 124.1 MB → 17.1 MB(重压 141 张图):扫描合同_compressed.pdf

体检报告先把「能压的无损大图」和「已是高效编码、留着不动的部分」分开列清楚,瘦身后 124 MB 的 PDF 降到 17 MB,发邮件、传网盘、转 Markdown 都轻快不少。

进阶:把散落各处的大 PDF 一次压完

单个文件压完意犹未尽,资料库里还散着上千份扫描 PDF,藏在「课程」「合同」「项目」一层层子文件夹里。给 compress 一个目录、加上 -r 递归整棵目录树,它就一次性全找出来批量处理——并发瘦身、坏文件自动跳过,末尾给出总共省了多少:

$ 42md tools compress ~/Documents --type pdf --min-size 50MB -r
将对 216 个文件执行 compress(合计 24.2 GB,并发 10)
  [1/216] ✓ 182.0 MB → 21.0 MB  扫描教材ch08.pdf
  [2/216] ✓ 124.1 MB → 17.1 MB  合同扫描件.pdf
…
完成:瘦身 216 个省 15.1 GB · 已高效 0 · 跳过(已做) 0 · 失败 0

资料库里不管藏在哪个子文件夹的大 PDF,能压的一次性压完,原本几十 GB 压到不到一半,腾出大片硬盘空间。混在里面的下载损坏文件会被自动认出、跳过,没有误处理。想先看清楚有哪些大文件再动手,可以先用 scan 列一遍清单(同样加 -r 扫整棵树)。

瘦身只动以无损格式塞进去的大图,阅读观感基本一致;瘦身产物另存为新文件,原件不动。

瘦身后归档:把原件挪到移动硬盘

瘦身产物是新文件(带 _compressed 后缀或转 .webp),原件还在原处。确认新文件都能正常打开后,可以把原件挪到移动硬盘归档,把本机空间彻底腾空。

稳妥的做法是「先复制、确认、再删」:用访达把原件拖到移动硬盘,确认拷贝完整、能打开,再删掉本机原件;命令行进阶可以用 rsync 保留目录结构复制过去,核对无误后再删原件。

移动 / 删除不可逆,动手前务必确认三件事:瘦身产物都已生成且能打开、移动硬盘已挂好、空间够用。

六、常见问题

会把我的文件上传到服务器吗?

不会。inspect 和 compress 都在本地处理,文件不离开你的电脑,也不消耗 AI 配额。

压缩会损坏原文件吗?

不会。产物默认另存为新文件(加 _compressed 后缀或转 .webp),原件始终保留,同名还会自动改名防覆盖。

支持哪些文件?

目前支持 PDF 与常见图片。其它格式会直接提示暂不支持。

画质会差很多吗?

compress 是把以无损格式塞进去的大图重新编码成更省体积的形式,日常阅读的观感基本一致。PDF 还能用 --quality 调,数值越高越清晰、体积越大。

本来就很小、压不动的文件会怎样?

会提示「已是高效编码,无可压空间」,并保持原文件不动,不会产出一个更大的「假压缩」文件。

七、立即体验

# 安装 / 更新
curl -fsSL https://42md.cc/mac | bash
irm https://42md.cc/win | iex

# 先体检
42md tools inspect 你的文件.pdf
# 再瘦身
42md tools compress 你的文件.pdf

系列回顾


活水 AI 实验室(42ailab) — 探索智能边界的 AI 创新实验室,以认知科学为基石,推动 AI 与人类智能的深度融合,真正理解并增强智能 —— 碳基的,也是硅基的。

活水MD(42md) — 活水 AI 实验室出品的高性能 Markdown 处理工具。AI 时代的 Markdown,一站式处理:42+ 种格式一行转 Markdown,还支持翻译、摘要、导出等十余种知识工具,并支持知识编译、流程编排、本地引擎与 Agent 调用。