普通看图软件看漫画,卡在哪一步

  • 压缩包打不开——资源是 zip / cbz,看图软件只认得图片扩展名,双击没反应,得先用 7-Zip 解压出一整个目录
  • 解压出来的目录很脏——__MACOSX/、Thumbs.db、readme.txt、封面小图混在页序里,一翻页就跳到无关文件
  • 只能单页看——屏幕横过来一半是空的,跨页大图被切在两张里,得自己对齐
  • 方向反了——日漫从右往左读,按 → 却是往右走,越看越别扭
  • 没有“我读到哪了”——关掉再打开,又从第 1 页开始找
  • 工具条压着画面——想看画,先得把鼠标挪开等浮层自己消失

这些都不是“看图”本身的问题,而是“读一本书”需要的能力。所以漫画模式没有塞进单图浏览,而是一个独立的阅读视图。

怎么进入漫画模式

四条路,随场景挑一条:

  • 压缩包:欢迎窗口点「打开压缩包…」,或直接把 .zip / .cbz 拖进窗口
  • 文件夹:欢迎窗口点「打开漫画文件夹…」,或把整个文件夹拖进窗口(会读取子目录)
  • 正在看某张图:按 M,或右键 / 瀑布流菜单里的「以漫画模式阅读此目录」,当前页就是起点
  • 换一本:阅读视图顶部工具条的「打开…」,不用退出再重进

拖压缩包和拖文件夹的区别只在数据源,阅读体验完全一样。

直接读 zip / cbz:不落盘,不建临时目录

这是漫画模式和“解压后再看”最大的区别。

打开 .cbz(本质就是 zip)时,imgview 只读压缩包的中央目录,拿到页列表就立刻可以翻页;你翻到第几页,才解压第几页。整个过程:

  • 不解压到临时目录——硬盘上不会多出一份几百 MB 的副本,关机也不用清理
  • 按页解压——单页解压后直接送进内存缓存,翻过的页留在缓存里,来回翻不重复解压
  • 只缓存最近约 96 MB——看完的页会被淘汰,读 200 页的合订本也不会把内存吃满
  • 单页上限 64 MB——防止一个异常巨大的条目把内存拖垮
  • 文件名编码兜底——不少国产漫画的 zip 用 GBK 存文件名,会先按 UTF-8 解,失败再按 GBK,中文页名不会变成乱码

目录源同样做了清理:忽略 Thumbs.db、.DS_Store、@eaDir 这类垃圾文件,跳过符号链接,子目录最多往下钻 8 层。

页序怎么定?目录源按文件名自然排序(1、2、10 的顺序正确,不是 1、10、2);zip 源按压缩包内的路径排序。这也是 imgview 一开始就坚持自然排序的原因,详见《1.jpg 后面为什么是 10.jpg》。

双页并排:像拿在手里的单行本

屏幕够宽时(≥ 900 px),漫画模式默认两页一组并排显示,就是纸质单行本摊开的样子。几个细节是刻意这么做的:

  • 封面单独一页——第 1 页不跟第 2 页配对,否则整本书的双页配对会全部错开;想改按 C
  • 只按页序号分组——不根据图片宽高去“猜”哪两页该拼,否则窗口一变、探测结果一到位,分组就会跳来跳去
  • 窄窗口自动降级单页——窗口拉窄到 900 px 以下自动变单页(两页挤在一起还不如单页看得清),拉宽自动恢复;这是一个自动行为,不会改掉你的双页偏好
  • 跨页大图——2870×2048 这种横跨两页的图,会按它自己的比例占满一行

两个轴:整页翻动,还是竖卷

按 V 切换阅读轴,两种模式对应两类漫画:

轴行为适合
横轴(整页)一行就是一组(单页或双页),滚轮 / 方向键整组翻动,停手后自动吸附对齐传统单行本、双页阅读、跨页大图
竖轴(竖卷)页面自上而下连续排列,像网页一样顺着往下滚条漫、webtoon、想一口气顺着看下去

竖卷模式下双页依然有效——只是双页在竖直方向上逐组往下排,并不冲突。

从右往左:日漫的正确方向

按 R 切换阅读方向。切到「←阅读」之后:

  • 横轴模式的行序整体反转,最右边是最早的一页
  • 双页内部左右也对调——右边那页先读,符合日漫的阅读顺序
  • ← / → 的语义跟着反,按右键是“往前读”

竖卷模式不受影响:竖直方向本来就是从上往下,第 1 页一定在最上面。

全屏:工具条会自动让开

看漫画最怕工具条压着画面。imgview 的漫画工具条独占顶部一条,画面从它下方开始,任何设置下都不会盖住内容;进入全屏后,工具条和标题栏一起收起,整块屏幕只留给画面。

  • 按 F / F11 / H,或点工具条上的「全屏」
  • 全屏状态再按一次退出;按 Esc 也是先退全屏,再按一次才离开漫画模式
  • 窗口一变大,双页会自动恢复、页面重新适配,不用手动调

看到哪了,下次接着看

漫画模式会记住每个源的阅读位置:

  • 目录源按目录的完整路径记
  • 压缩包源按压缩包路径 + 文件代次(文件被替换过,进度自然从头开始)
  • 最多保留最近 50 条,换个目录看别的也不会把常用的挤掉

下次从同样的入口打开同一个源,直接落在上次那一页。

工具条上还有什么

  • 页码 / 总数——一眼知道进度
  • 跳页——点开后输入页码回车,比连按几十次方向键快
  • 大图——把当前页单独放大看(滚轮缩放、拖动平移、Z / Enter / 双击都能开)
  • 全屏——见上一节
  • 打开…——换一本书,不退出漫画模式
  • 退出——关掉 imgview 本身(不是退出模式)

只想回到单图浏览(继续看同目录的普通图片),按 Esc 或 M 即可;目录源会直接落到你正在看的那一页。

完整键位表

按键 / 操作功能
← / →上一组 / 下一组(切了「←阅读」后方向反过来)
Space / Shift+Space、PgDn / PgUp滚一屏(竖卷模式下最顺手)
Home / End第一页 / 最后一页
G跳页(输入页码回车)
V切换轴:横轴整页翻动 ↔ 竖轴竖卷
D双页 / 单页
R阅读方向:左→右 ↔ 右→左
C封面是否单独占一页
Z / Enter / 双击打开当前页大图(Esc 关闭)
+ / − / 0 / 1 / Ctrl+滚轮放大 / 缩小 / 适应 / 原始尺寸
T背景:棋盘格 → 深色 → 白色
F / F11 / H全屏(工具条自动收起)
Esc / M退出全屏 → 退出漫画模式 → 回落单图

rar / cbr 为什么不支持

打开 .cbr / .rar 时,漫画模式会明确告诉你「暂不支持 CBR 格式的压缩包,可用 7-Zip / WinRAR 解压后按目录阅读」,而不是静默失败。原因不是偷懒:

  • RAR 没有公开的完整规范——RAR5 的格式细节没有官方文档,只能绑官方 C++ 解码库,与“纯 Rust、单文件、可离线构建”的取舍冲突
  • 固实压缩与随机访问天然矛盾——RAR / 7z 默认把多个文件压成一个连续数据流,想直接跳到第 80 页,理论上要先解开前面 79 页,跳页和进度恢复会慢得不可接受
  • zip / cbz 就是事实标准——绝大多数漫画资源本来就是 zip 打包,cbz 只是它的扩展名

所以遇到 .cbr 有两个办法:7-Zip 直接解压成文件夹,用「打开漫画文件夹」读;或者重新打包成 zip,把扩展名改成 .cbz。两者阅读效果完全一样。

同样不做的还有:.7z / .cb7、.cbt(tar)、PDF、压缩包里再套压缩包。另:imgview 不会抢占 .cbz 的双击关联,压缩包仍归你的解压软件管。

小结

漫画模式的定位很朴素:它是“看图”这件事的延伸,不是另一个软件。同一个 exe,看照片时按方向键翻页,看漫画时按方向键翻页——只是这时候一“页”可能是一组双页,方向可能是从右往左,而数据可能还躺在一个没有解压过的 zip 里。

把压缩包拖进来,按 F 全屏,然后只剩下画面。

想先了解 imgview 的其他能力,可以看《看图时顺手改图:旋转、裁剪、调整尺寸》和《看图也能全键盘》。