iepub
EPUB格式读写库,
支持从文件和内存读取和生成EPUB电子书
生成
1、可以使用EpubBook
结构体手动生成epub
2、(推荐)使用EpubBuilder
快速生成
use EpubHtml;
use EpubBuilder;
default
.with_title
.with_creator
.with_date
.with_description
.with_identifier
.with_publisher
.add_chapter
.add_assets
.metadata
.metadata
.file
.unwrap;
读取
use ;
let mut data = Vec new;// epub的二进制数据
let mut book = read_from_vec;
// 从文件读取
let mut bbook = read_from_file;
// 注意,默认情况下读取采用懒加载,上述代码只完成了基础结构读取,包括目录,文件列表等等,具体某个章节或者资源的数据将会推迟到第一次调用`data()`方法时读取
// 例如
let mut chap = book.get_chapter.unwrap;
let data = chap.data;// 此时将会实际读取并解析文件
let data2 = chap.data;// 第二次不会再读取文件了
注意事项
iepub
使用EpubHtml
来存储章节内容,但是EpubHtml#data
实际只会存储 html>body 节点内的内容,并且不包括body节点的属性(attribute),其他比如样式表将会存放在其他属性中
命令行工具
tool
目录为命令行工具
目前支持
- 获取元数据,如标题、作者
- 修改元数据
- 提取封面
- 提取所有图片
- 提取某章节文本
- 获取目录
可通过-h
获取使用方法说明