当前工作重点:
有关当前开发阶段的更多详情:https://github.com/nlbdev/nordic-epub3-dtbook-migrator/issues/522
本项目的最初目标是为北欧国家的图书馆提供EPUB3到DTBook的转换工具,这些图书馆为视障读者提供无障碍文献(NLB、MTM、SPSM、Celia、Nota和SBS)。转换通过XProc和XSLT实现,并以DAISY Pipeline 2脚本形式提供。此转换允许各组织在必要时继续使用其基于DTBook的工具生产盲文和合成语音,并在生产工具准备就绪后逐步过渡到EPUB。
该工具尝试以最小损失将EPUB3映射到DTBook(1:1映射)。尽管EPUB3内部由多个HTML文件组成,但中间的单页HTML表示对于与DTBook之间的转换非常有用。
2020年启动了指南修订工作。参与组织包括Celia、Dedicon、HBS、MTM、NLB、Nota、SBS、SPSM和Statped。
因此,需要更新验证器,并实现了针对新指南的EPUB验证。目前(至少尚未)不存在指南旧版本(EPUB 2015-1或DTBook 2011-2)与新版本(EPUB 2020-1)之间的转换路径。
本项目提供以下Pipeline 2脚本:
目前唯一支持2020-1指南的脚本是EPUB3验证器。
EPUB3转DTBook脚本允许新的EPUB3文件与遗留的基于DTBook的系统一起使用。
DTBook转EPUB3脚本允许将遗留DTBook升级到新的基于EPUB3的生产系统。
还提供了用于在出版物的中间单HTML表示之间转换的脚本。这些脚本可用于调试,或当基于HTML的生产系统需要单文档HTML表示作为输入或输出时使用。
提供了EPUB3、DTBook和单文档HTML文件的验证器。EPUB3验证器可检查新EPUB3文件是否符合北欧标记指南。DTBook和HTML验证器可用于基于DTBook或HTML的生产系统。
在北欧标记指南(2015-1版)中,数学内容使用ASCIIMath标记。提供了将ASCIIMath转换为MathML的实验性脚本。
EPUB3、HTML和DTBook文件中使用的语法是EPUB3、HTML和DTBook的严格子集,由北欧标记指南定义。大多数DTBook可与这些脚本一起使用,对输入DTBook语法的限制很少。然而,对HTML/EPUB3语法的限制较多,因为必须有转换为DTBook的方法。最值得注意的是,这些EPUB3目前不允许包含音频和视频等多媒体。
安装依赖:
bashsudo apt install git maven gpg
克隆仓库:
bashgit clone https://github.com/nlbdev/nordic-epub3-dtbook-migrator.git
Nordic Migrator可通过Maven直接构建(例如mvn clean package),或通过Docker间接构建(例如docker build .)。
测试是构建过程的一部分,但也可显式调用:mvn test。
首先,确保您拥有GPG密钥:https://docs.github.com/en/authentication/managing-commit-signature-verification/generating-a-new-gpg-key
并确保在~/.gnupg/gpg.conf中将GPG密钥设置为默认:
default-key ABCDEF123
将GitHub凭据添加到本地~/.m2/settings.xml(应使用个人访问令牌作为密码):
xml<server> <id>github</id> <username><!-- 您的github用户名 --></username> <password><!-- 您的个人访问令牌 --></password> </server>
发布惯例是从功能分支或专用发布分支发布,然后通过合并提交合并到master分支。
准备发布:
bashmvn release:prepare
系统将提示:
此时,Maven将更新POM中的版本并运行所有测试,这需要几分钟时间。
完成后,在git日志中会看到:
HEAD [maven-release-plugin] prepare for next development iteration tag: vX.X.X [maven-release-plugin] prepare release vX.X.X
然后,可使用以下命令发布发布工件:
bashmvn release:perform
同时,记得将标签推送到上游:
git push origin vX.X.X
项目设置为使用mvn-repo分支作为Maven仓库,工件将发布到该分支。
如果要在另一个项目中使用nordic migrator作为Maven包,请将此仓库添加到项目中:
xml<repository> <id>nordic-epub3-dtbook-migrator-mvn-repo</id> <url>https://github.com/nlbdev/nordic-epub3-dtbook-migrator/raw/mvn-repo/</url> <snapshots> <enabled>true</enabled> <updatePolicy>always</updatePolicy> </snapshots> </repository>
带有版本标签的提交会在Docker Hub上自动构建和标记。标签由mvn release:prepare自动创建,当使用git push origin vX.X.X将git标签推送到Github时,webhook会通知Docker Hub构建新镜像。
master分支上的所有提交都会在Docker Hub上构建,最新提交可通过:latest标签获取。
有关更多信息,请参见http://nlbdev.github.io/nordic-epub3-dtbook-migrator/%E3%80%82
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。



探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务