用途
Markdown to EPUB Converter 是一个将 Markdown 文档转换为专业 EPUB 电子书文件的技能。它适用于把研究文档、博客文章、文章或聊天对话摘要转换为便携、跨设备的电子书格式。生成的 EPUB3 文件可在 Apple Books、Amazon Kindle(通过 Kindle for Mac/Windows/iOS/Android)、Google Play Books、Kobo 及其他标准 EPUB 阅读器上使用。
主要能力
- 接受多种输入格式:可直接在消息中提供原始 Markdown 文本,也可提供 Markdown 文件的路径。
- Markdown 解析:自动将 H1 标题(#)视为章节边界,将 H2 标题(##)视为章节内小节标题,并保留加粗、斜体、链接、列表、代码块等格式。
- 结构生成:自动从章节生成目录、生成导航文档(EPUB3 标准)以及元数据(标题、语言等)。
- 文件创建:生成有效的 EPUB3 文件,可供下载和使用。
- 支持的 Markdown 元素:各级标题(# H1 至 ###### H6,支持自动生成目录)、加粗(text 或 text)、斜体(text 或 text)、链接(text,在电子书中可点击)、列表(- item 或 1. item,支持嵌套列表)、代码块(```language,增强支持,等宽字体)、行内代码(增强支持,带样式背景和边框)、表格(增强支持,带样式表头和交替行)、引用(> quote,带左边框样式)、水平分割线(--- 或 ***)。
- 增强的代码块支持:使用优质等宽字体(SF Mono、Monaco、Fira Code、Consolas 等),带浅灰背景和蓝色强调边框,支持在 ``` 后指定语言以便未来语法高亮,HTML 字符安全转义,长行支持水平滚动。
- 增强的表格支持:蓝色背景白色文字的表头、交替行斑马纹、舒适的单元格内边距、单元格内支持行内格式(代码、加粗、斜体、链接),并适配不同屏幕尺寸。
- 自定义标题和元数据:可指定书名(默认使用第一个 H1 标题)、作者名、语言、出版日期。
- 章节组织:自动从 H1 标题识别主要章节分隔,在 H1 之间形成逻辑内容小节,并在章节之间自动分页。
- 样式:生成的 EPUB 使用干净、可读的默认样式,尊重阅读器的字体偏好,适配所有屏幕尺寸,保持适当的间距和层级,并包含合适的边距和内边距。
使用方式
提供 Markdown 内容即可触发转换。示例:
- 转换博客文章:"Convert this markdown blog post to EPUB: How to Build a Simple Web Server ..."
- 转换研究摘要:"I have research notes in markdown format. Convert them to an EPUB ebook. The content is: Research Project: Machine Learning Basics ..."
- 转换聊天摘要:"Summarize our conversation so far as markdown and convert it to an EPUB for reference"
生成后,文件可供下载。你可以将 EPUB 下载到电脑,用偏好的电子书阅读器打开,传输到 Kindle、iPad 或其他设备,或通过电子邮件或云端直接上传至 Kindle。
适用场景
- 将研究文档、博客文章、文章转换为电子书。
- 将聊天对话摘要整理为可离线阅读的 EPUB。
- 需要跨设备、跨阅读器阅读的 Markdown 内容。
限制与注意事项
- 格式为 EPUB3,编码为 UTF-8,HTML 版本为 XHTML 1.1,CSS 支持响应式样式。
- 为获得最佳效果,建议使用标准 Markdown 结构(H1 用于标题,H2 用于小节),用 H1 清晰标记章节分隔,标题应清晰描述性(因为标题会成为目录),内容应逻辑地置于标题之间,并尽量使用基本 Markdown 格式以兼容所有阅读器。
- 故障排查:EPUB 无法打开时,检查 Markdown 格式是否正确、链接括号是否匹配、语法是否正确;目录为空时,确认 Markdown 中包含用于定义章节的 H1 标题;格式看起来不同是正常的,因为 EPUB 阅读器会应用自己的字体和样式。
- 脚本:epub_generator.py(核心 EPUB 文件创建和格式化)、markdown_processor.py(Markdown 解析和结构提取)。
- 未来增强(暂未提供):带自定义图片的自动生成封面页、Kindle 专用优化(.mobi 格式)、按用户偏好自定义 CSS 样式、多文档合并、图片嵌入和优化、高级元数据支持。