FictionBook 2.0电子书 (.fb2)

FictionBook 标准

FictionBook 2.0 (FB2) 是一种流行的开放式、基于语义的XML电子书格式,将整本书的文本、排版、元数据和内嵌封面插图打包到一个独立的XML文件中。

将 FB2 转换为 EPUB

免费的浏览器端 FB2 转 EPUB 转换器。在您的设备上即时转换文件。

检查与元数据

操作系统和文件分析器通过检查开头的二进制字节序列来识别 FB2 文件:

选择或将文件拖放到此处

100% 浏览器端私密转换 - 文件绝不会离开您的设备

或粘贴 Ctrl+V
零网络传输隐私保证: 上传至外部服务器的数据为 0 字节。所有处理均在您的浏览器沙箱中本地完成。

字节级文件头签名 (Magic Bytes)

操作系统和文件分析器通过检查开头的二进制字节序列来识别 FB2 文件:

十六进制签名 (偏移量 0):

3C 3F 78 6D 6C

ASCII 表示形式: <?xml

标准化: FictionBook Open XML Specification

技术规格

容器架构Single self-contained XML document containing metadata, body chapters, poems, epigraphs, and Base64-encoded binary images
压缩方式Uncompressed raw XML or zipped as .fb2.zip
字节序UTF-8 / Unicode text stream
色彩空间Embedded image profiles
通道与结构Semantic book structure (title-info, body, epigraphs, footnotes, sections)
最大尺寸Unbounded text length
透明度None in markup (embedded PNGs support transparency)
流式传输与渐进式加载Sequential XML stream; footnote hyperlinks provide instant footnote jumps

技术对比矩阵:FB2 对比同类产品

技术属性FB2 (当前)EPUBMOBITXT
文件结构单个独立的XML文本文档包含XHTML/CSS/图片的ZIP归档PalmDOC二进制数据库纯原始文本流
图片存储Base64嵌入在XML内部ZIP内部的独立图片文件Palm数据库中的二进制记录无(仅文本)
语义感知高(原生支持诗歌、题词标签)依赖CSS类原始HTML标签零语义结构
主要区域东欧与PocketBook全球/西方标准旧版亚马逊Kindle通用

常见损坏模式与十六进制恢复指南

电子书阅读器报告:"XML解析错误:第X行标签不匹配"。

根本原因: 书本正文内存在未闭合的XML标签或未转义的与号('&')。

恢复方法: 使用File2File FB2修复工具验证并修复XML架构标签。

安全分析与解析器攻击向量

FB2基于XML,容易受到标准的XML解析器攻击,例如XML实体扩展(数十亿笑话攻击)和XXE。

已知攻击向量

  • 在自动化图书处理过程中读取本地服务器文件的XML外部实体(XXE)注入。
  • 在构建XML DOM期间消耗内存的XML实体爆炸(数十亿笑话攻击)。
  • 在未经加固的C语言电子书阅读器库中,在Base64图片解码期间发生堆破坏。

防御性最佳实践:

历史渊源与里程碑

2010FB2.ZIP成为东欧电子书阅读器(PocketBook)事实上的标准电子书格式。
2008FictionBook 2.1引入了增强的流派分类和表格结构。
2004Dmitry Gribov和Michael Matsnev创建了FB2,优先考虑语义化的图书结构而非视觉呈现。

核心优势与特点

  • 纯粹的语义标记:描述文本代表的内容(诗歌、引文、脚注、题词),而不是它的外观。
  • 单文件简洁性:所有插图和封面图片都作为Base64文本直接嵌入在单个XML文件中。
  • 由于标准化的语义XML标签,易于自动转换、索引和翻译。

技术局限与劣势

  • 缺乏现代EPUB 3中常见的高级CSS样式、自定义网页排版和动态动画。
  • Base64编码使内嵌插图的文件大小增加了约33%。
  • 在没有第三方固件或转换的情况下,西方电子书阅读器(Kindle、Kobo)很少支持。

趣味技术冷知识

  • FB2诞生于俄罗斯,至今仍是东欧阅读最广泛的电子书格式,所有PocketBook设备均对其提供原生支持。
  • 在FB2文件中,脚注存储在专用的"<notes>"正文部分,允许电子书阅读器将其显示为弹出窗口。
  • 只需将.fb2文件作为XML文档打开,即可在任何标准网页浏览器中查看和验证FB2文件。

常见技术问题

哪些设备可以阅读 FB2 文件?

PocketBook 电子书阅读器、FBReader、Moon+ Reader、Calibre 以及各种 Android/iOS 阅读器应用均可原生阅读 FB2。

如何将 FB2 转换为 EPUB 或 PDF?

将你的 FB2 文件上传到 File2File.app,即可直接在浏览器中于几秒钟内将其转换为样式精美的 EPUB 或 PDF 图书。

什么是 FB2.ZIP 文件?

FB2.ZIP 文件本质上是使用 ZIP 压缩进行压缩的标准 .fb2 XML 文件,旨在节省电子书阅读器存储卡上的空间。