首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >自制CBZ格式漫画 导入电纸书 | 掌阅 文石 汉王 WEBP

自制CBZ格式漫画 导入电纸书 | 掌阅 文石 汉王 WEBP

作者头像
夜梦星尘
发布2026-06-01 09:06:58
发布2026-06-01 09:06:58
1010
举报

前言

夜梦这段时间使用掌阅(ireader)读书,然后碰巧看到了漫画,所以就想着把漫画也导入到电纸书中阅读,夜梦这里使用的是掌阅Neo2。

关于漫画,夜梦下载到的是数十个WEBP格式的图片,如果直接导入neo2中也可以直接看,但是没办法点击翻页,需要手动滑动才能翻页,比较麻烦。所以夜梦考虑把它们“组装”成CBZ格式的漫画,导入后就可以直接点击翻页,很便捷。

CBZ(Comic Book Zip)本质上是一个按照顺序排列图片的压缩包,大多数漫画阅读器均支持该格式。

一些废话:

相比PDF,CBZ更适合漫画阅读:

  • 翻页速度快
  • 不会因 PDF 渲染导致卡顿
  • 保持原始画质
  • 文件体积更小
  • 支持封面显示
  • 支持阅读进度记录

通过Python可以快速将WEBP漫画打包为CBZ文件,并自动:

  • 按页码排序
  • 设置封面
  • 保留原始画质
  • 适配掌阅等电纸书设备

对于漫画阅读场景,CBZ通常比PDF更轻量、更流畅,也是目前最推荐的漫画电子书格式之一。

操作

夜梦这里使用Python将WEBP漫画打包为CBZ 电子漫画书。在“组装”之前,漫画资源都目前以单页图片的形式保存,例如:

代码语言:javascript
复制
00001.webp
00002.webp
00003.webp
...

假设漫画目录如下:

代码语言:javascript
复制
文件夹
├─00001.webp
├─00002.webp
├─00003.webp
├─...

其中:00001.webp 为第一页,文件名按照页码顺序命名。使用下面的python脚本就可以直接将这些图片打包成CBZ格式的漫画(默认使用第一页00001.webp作为漫画封面,同时默认把文件夹名作为cbz名称):

代码语言:javascript
复制
from pathlib import Path
import zipfile
import re

# =========================
# 漫画文件夹
# =========================
input_dir = Path(r"./文件夹")

# =========================
# 输出CBZ
# =========================
output_cbz = input_dir.parent / f"{input_dir.name}.cbz"

# =========================
# 数字排序
# =========================
def get_number(path):
    m = re.search(r"\d+", path.stem)
    return int(m.group()) if m else 0

files = sorted(
    input_dir.glob("*.webp"),
    key=get_number
)

if not files:
    raise Exception("未找到WEBP文件")

# =========================
# 创建CBZ
# =========================
with zipfile.ZipFile(
    output_cbz,
    "w",
    compression=zipfile.ZIP_STORED
) as cbz:

    # 使用第一页作为封面
    cover = files[0]

    cbz.write(
        cover,
        arcname="cover.webp"
    )

    # 添加全部页面
    for f in files:
        cbz.write(
            f,
            arcname=f.name
        )

print()
print("========== 完成 ==========")
print(f"书名:{input_dir.name}")
print(f"封面:{files[0].name}")
print(f"页数:{len(files)}")
print(f"输出:{output_cbz}")

执行完成后,将生成:

代码语言:javascript
复制
文件夹名.cbz

压缩包内部结构:

代码语言:javascript
复制
cover.webp
00001.webp
00002.webp
00003.webp
...

完成后直接把OBZ文件导入掌阅中即可,推荐数据线传输,拔掉数据线后会自行把OBZ格式的漫画加入书架。over~

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2026-5-31 1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 操作
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档