2 Star 6 Fork 1

东方星痕 / kaf-cli

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
mobil.go 949 Bytes
一键复制 编辑 原始数据 按行查看 历史
package kafcli
import (
"fmt"
"github.com/766b/mobi"
"time"
)
type MobiConverter struct{}
func (convert MobiConverter) Build(book Book) error {
fmt.Println("使用第三方库生成mobi, 不保证所有样式都能正常显示")
fmt.Println("正在生成mobi...")
start := time.Now()
m, err := mobi.NewWriter(fmt.Sprintf("%s.mobi", book.Out))
if err != nil {
panic(err)
}
m.Title(book.Bookname)
m.Compression(mobi.CompressionNone)
if book.Cover != "" {
m.AddCover(book.Cover, book.Cover)
}
m.NewExthRecord(mobi.EXTH_DOCTYPE, "EBOK")
m.NewExthRecord(mobi.EXTH_AUTHOR, book.Author)
for _, section := range book.SectionList {
m.NewChapter(section.Title, []byte(section.Content))
if len(section.Sections) > 0 {
for _, subsection := range section.Sections {
m.NewChapter(subsection.Title, []byte(subsection.Content))
}
}
}
m.Write()
fmt.Println("生成mobi电子书耗时:", time.Now().Sub(start))
return nil
}
Go
1
https://gitee.com/ystyle/kaf-cli.git
git@gitee.com:ystyle/kaf-cli.git
ystyle
kaf-cli
kaf-cli
master

搜索帮助