# epubMerger **Repository Path**: VerSion20/epubMerger ## Basic Information - **Project Name**: epubMerger - **Description**: 一个用于将多个EPUB文件按顺序合并成一个文件的Python工具。A tool for merging multiple EPUB files into a single file in sequence. - **Primary Language**: Python - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-06-30 - **Last Updated**: 2025-06-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # EPUB文件合并工具 [English](README_EN.md) | 中文 这是一个用于将多个EPUB文件按顺序合并成一个文件的Python工具。该工具能够保留原有的图片和文字,保持原有的顺序和位置。 ## 功能特点 - ✅ 按顺序合并多个EPUB文件 - ✅ 保留原有的图片和文字内容 - ✅ 保持原有的阅读顺序和位置 - ✅ 支持命令行和图形界面两种使用方式 - ✅ 现代化美观的GUI界面设计 - ✅ 自动处理EPUB内部结构 - ✅ 支持中文路径和文件名 - ✅ 实时进度显示和状态反馈 - ✅ 支持多种语言设置选择 ## 界面特色 ### 现代化设计 - 🎨 采用现代化的扁平设计风格 - 🌈 精心搭配的配色方案 - 📱 响应式布局,支持窗口缩放 - 🎯 直观的图标和视觉反馈 - 💫 流畅的交互体验 ### 用户友好 - 📁 拖拽式文件选择 - 🔄 实时文件列表管理 - ⚡ 实时进度显示 - 📊 详细的状态信息 - 🕒 时间戳记录 - 🌍 界面多语言切换支持 ### 多语言界面 - 🎯 支持5种界面语言:中文简体、中文繁体、英文、日文、韩文 - 🔄 实时语言切换,无需重启程序 - 📝 完整的界面文本本地化 - 🎨 保持一致的视觉设计风格 ## 文件说明 - `epub_merger.py` - 核心合并功能模块 - `epub_merger_gui.py` - 现代化图形界面版本 - `README.md` - 中文使用说明文档 - `README_EN.md` - 英文使用说明文档 - `一键启动.bat` - Windows一键启动脚本 ## 安装要求 本程序使用Python标准库,无需安装额外的依赖包。支持Python 3.6及以上版本。 ## 使用方法 ### 方法一:现代化图形界面(推荐) 1. **启动程序**: ```bash python epub_merger_gui.py ``` 或双击 `一键启动.bat` 文件 2. **使用界面**: - 🖱️ 点击"➕ 添加文件"选择要合并的EPUB文件 - 📋 使用"⬆️ 上移"、"⬇️ 下移"按钮调整文件顺序 - 🗑️ 使用"❌ 删除选中"移除不需要的文件 - 💾 设置输出文件名和位置 - 🚀 点击"开始合并"执行合并操作 ### 方法二:命令行 1. **基本用法**: ```bash python epub_merger.py file1.epub file2.epub file3.epub -o merged.epub ``` 2. **指定语言**: ```bash python epub_merger.py file1.epub file2.epub -o merged.epub -l en-US ``` 3. **查看帮助**: ```bash python epub_merger.py -h ``` ## 语言设置 程序支持多种语言设置,可以在合并时指定输出EPUB的语言: ### 支持的语言 - **中文 (简体)** - `zh-CN` (默认) - **中文 (繁体)** - `zh-TW` - **English (US)** - `en-US` - **English (UK)** - `en-GB` - **日本語** - `ja-JP` - **한국어** - `ko-KR` - **Français** - `fr-FR` - **Deutsch** - `de-DE` - **Español** - `es-ES` - **Italiano** - `it-IT` - **Português** - `pt-BR` - **Русский** - `ru-RU` ### GUI界面设置 在GUI界面中,语言选择位于右侧的"输出设置"区域: 1. 在"语言设置"下拉框中选择所需语言 2. 界面会实时显示对应的语言代码 3. 合并时会自动应用选择的语言设置 ### 命令行设置 使用 `-l` 或 `--language` 参数指定语言: ```bash # 合并为英文版本 python epub_merger.py chapter1.epub chapter2.epub -o english_book.epub -l en-US # 合并为日文版本 python epub_merger.py part1.epub part2.epub -o japanese_book.epub -l ja-JP # 合并为繁体中文版本 python epub_merger.py book1.epub book2.epub -o traditional_book.epub -l zh-TW ``` ## 界面预览 ![1751275792274.png](https://version-pic-bed.oss-cn-hangzhou.aliyuncs.com/images/1751275792274.png) ### 主要功能区域 1. **📁 文件选择区域** - 文件列表显示 - 文件数量统计 - 文件操作按钮(添加、删除、排序) 2. **💾 输出设置区域** - 输出文件名设置 - 文件位置选择 3. **⚡ 处理状态区域** - 实时状态显示 - 进度条动画 - 时间戳记录 4. **🚀 操作按钮区域** - 醒目的合并按钮 - 悬停效果反馈 ## 使用示例 ### GUI使用步骤 1. **启动程序**:双击运行 `epub_merger_gui.py` 或在命令行中运行 2. **选择界面语言**:在顶部"🌍 界面语言"下拉框中选择所需的界面显示语言 3. **添加文件**:点击"➕ 添加文件"按钮,选择要合并的EPUB文件 4. **调整顺序**:使用"⬆️ 上移"、"⬇️ 下移"按钮调整文件的合并顺序 5. **设置输出**:在输出文件名框中输入合并后的文件名 6. **选择输出语言**:在右侧"语言设置"下拉框中选择输出EPUB的语言 7. **开始合并**:点击"🚀 开始合并"按钮,等待处理完成 ### 命令行示例 ```bash # 合并两个EPUB文件 python epub_merger.py chapter1.epub chapter2.epub -o complete_book.epub # 合并多个文件 python epub_merger.py part1.epub part2.epub part3.epub part4.epub -o full_novel.epub # 合并为英文版本 python epub_merger.py chapter1.epub chapter2.epub -o english_book.epub -l en-US # 合并为日文版本 python epub_merger.py part1.epub part2.epub -o japanese_book.epub -l ja-JP # 合并为繁体中文版本 python epub_merger.py book1.epub book2.epub -o traditional_book.epub -l zh-TW ``` ## 设计理念 ### 现代化UI设计 - **扁平化设计**:去除多余的装饰元素,突出功能性 - **卡片式布局**:清晰的信息分组和层次结构 - **一致的颜色系统**:统一的视觉语言和品牌识别 - **响应式交互**:流畅的动画和状态反馈 ### 用户体验优化 - **直观的操作流程**:符合用户习惯的操作路径 - **清晰的状态反馈**:实时的进度和状态信息 - **友好的错误处理**:详细的错误提示和解决建议 - **无障碍设计**:支持键盘导航和屏幕阅读器 ## 注意事项 1. **文件顺序**:合并后的内容将按照您选择的文件顺序排列 2. **文件格式**:确保输入的EPUB文件格式正确且未损坏 3. **输出位置**:确保有足够的磁盘空间存储合并后的文件 4. **中文支持**:程序完全支持中文路径和文件名 5. **界面缩放**:支持窗口大小调整,最小尺寸700x600 ## 技术原理 程序的工作原理: 1. **解压EPUB**:将每个EPUB文件解压到临时目录 2. **解析结构**:读取container.xml和content.opf文件 3. **提取内容**:按照spine顺序提取所有内容文件 4. **合并资源**:合并所有图片、CSS等资源文件 5. **重建结构**:创建新的content.opf和container.xml 6. **打包文件**:将所有内容重新打包为EPUB格式 ## 故障排除 ### 常见问题 1. **"找不到container.xml文件"错误** - 原因:EPUB文件可能已损坏或格式不正确 - 解决:检查EPUB文件是否完整,尝试用其他EPUB阅读器打开 2. **"合并失败"错误** - 原因:可能是文件权限问题或磁盘空间不足 - 解决:检查文件权限和磁盘空间 3. **GUI界面无响应** - 原因:处理大文件时界面可能暂时无响应 - 解决:等待处理完成,这是正常现象 4. **界面显示异常** - 原因:可能是字体或显示设置问题 - 解决:确保系统安装了Microsoft YaHei UI字体 ### 日志信息 程序会显示详细的处理日志,包括: - 文件处理进度 - 资源复制信息 - 错误详情 ## 更新日志 ### v2.2.0 - 界面多语言版本 - 🌍 新增界面多语言切换功能 - 🎯 支持5种界面语言:中文简体、中文繁体、英文、日文、韩文 - 🔄 实时语言切换,无需重启程序 - 📝 完整的界面文本本地化 - 🎨 保持一致的视觉设计风格 ### v2.1.0 - 语言选择功能版本 - 🌍 新增多种语言设置选择功能 - 🎯 支持12种常用语言代码 - 🖥️ GUI界面集成语言选择下拉框 - ⌨️ 命令行支持-l参数指定语言 - 📝 完善的使用文档和示例 ### v2.0.0 - 现代化界面版本 - 🎨 全新的现代化GUI界面设计 - 🌈 优化的配色方案和视觉体验 - 📱 响应式布局和窗口缩放支持 - 🎯 直观的图标和交互反馈 - ⚡ 实时进度显示和状态更新 ### v1.0.0 - 基础版本 - 支持基本的EPUB合并功能 - 支持命令行和基础GUI两种使用方式 - 完整的错误处理和日志记录 ## 许可证 本程序为开源软件,可自由使用和修改。 ## 贡献 欢迎提交问题报告和功能建议!