在 MinDoc 0.7 以及以上版本,导出功能由 calibre 实现。该程序是基于 python 的电子书制作软件,可导出多种文档格式。

在 MinDoc v0.12 以上版本,需要在配置文件中开启导出功能:

  1. enable_export="${MINDOC_ENABLE_EXPORT||true}"

目前 MinDoc 支持导出 PDFEPUBMOBIWord 四种格式。

感谢 @TruthHun 提供的解决方案: https://github.com/TruthHun/converter

Calibre 的配置与按照请参考官方文档:

  • 下载地址:https://calibre-ebook.com/download
  • 根据自己的系统安装对应的 calibre(需要注意的是,calibre 要安装 3.x 版本的,2.x 版本的功能不是很强大。反正安装最新的就好。)
  • 安装完 calibre 之后,将 calibre 加入到系统环境变量中,执行下面的命令之后显示 3.x 的版本即表示安装成功。
  1. ebook-convert --version

MinDoc 默认会在系统临时目录生成需要导出的文件,生成目标文件后,会将目标文件复制到 MinDoc 根目录/uploads/books/项目ID/ 中,并缓存。

在项目有最新版发布时,会删除已缓存的文件,下次导出会再次缓存。

linux 下安装 Calibre 需要依赖 python2.6libstdc++.so.6.0.17GLIBC 2.17libXcompositelibGL

确保已正确安装上述依赖,再执行一下命令安装 Calibre:

  1. sudo -v && wget -nv -O- https://download.calibre-ebook.com/linux-installer.py | sudo python -c "import sys; main=lambda:sys.stderr.write('Download failed\n'); exec(sys.stdin.read()); main()"

手动执行转换程序,查看是否正常转换:

  1. ebook-convert test.txt test.pdf

Windows 下安装请下载最新版本二进制文件安装即可。

已遇到的问题列表:

1、提示缺少 libgl.so.1

解决:尝试安装 sudo yum install libGL.so.1 或者 sudo yum install mesa-libGL 或者 sudo yum install Mesa-libGL-devel.

2、提示缺少 libXcomposit

解决:尝试执行 sudo yum install libXcomposit

3、Linux 下解决中文不显示问题

解决:将 Windows 上的宋体上传到服务器 /usr/share/fonts//usr/share/fonts/chinese/TrueType/simsun.ttc