Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
gen-epub
提交
f60a46d9
G
gen-epub
项目概览
OpenDocCN
/
gen-epub
通知
1
Star
0
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
gen-epub
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
f60a46d9
编写于
7月 23, 2020
作者:
W
wizardforcel
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
2020-07-23 14:36:40
上级
5f151a10
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
14 addition
and
3 deletion
+14
-3
history.md
history.md
+4
-0
package.json
package.json
+1
-1
src/index.js
src/index.js
+9
-2
未找到文件。
history.md
浏览文件 @
f60a46d9
# 历史记录
v1.1.0 2020.7.23
+
在 HTML 文件名称左侧填充 0,使其对齐
v1.0.0 2020.4.30
+
正式发布
\ No newline at end of file
package.json
浏览文件 @
f60a46d9
{
"name"
:
"gen-epub"
,
"version"
:
"1.
0.1
"
,
"version"
:
"1.
1.0
"
,
"description"
:
"A small tool to generate EPUB."
,
"main"
:
"src/index.js"
,
"scripts"
:
{
...
...
src/index.js
浏览文件 @
f60a46d9
...
...
@@ -15,6 +15,11 @@ function fnameEscape(name){
return
name
.
replace
(
/
\\
|
\/
|:|
\*
|
\?
|"|<|>|
\|
/g
,
'
-
'
)
}
function
calcDigitCount
(
l
)
{
return
(
l
==
0
)?
1
:
Math
.
floor
(
Math
.
log10
(
l
))
+
1
}
function
writeEpub
(
articles
,
imgs
,
name
,
path
)
{
name
=
name
||
articles
[
0
].
title
...
...
@@ -33,9 +38,11 @@ function writeEpub(articles, imgs, name, path) {
zip
.
file
(
'
META-INF/container.xml
'
,
container
);
zip
.
file
(
'
OEBPS/Styles/Style.css
'
,
style
);
var
l
=
calcDigitCount
(
articles
.
length
)
articleTemp
=
ejs
.
compile
(
articleTemp
)
for
(
var
[
i
,
art
]
of
articles
.
entries
())
{
zip
.
file
(
`OEBPS/Text/
${
+
i
+
1
}
.html`
,
articleTemp
(
art
));
var
padNum
=
i
.
toString
().
padStart
(
l
,
'
0
'
)
zip
.
file
(
`OEBPS/Text/
${
padNum
}
.html`
,
articleTemp
(
art
));
}
for
(
var
[
fname
,
data
]
of
imgs
.
entries
())
{
...
...
@@ -45,7 +52,7 @@ function writeEpub(articles, imgs, name, path) {
var
uuid_
=
uuid
.
v4
();
var
htmlToc
=
articles
.
map
((
art
,
i
)
=>
({
title
:
art
.
title
,
file
:
`
${
+
i
+
1
}
.html`
,
file
:
i
.
toString
().
padStart
(
l
,
'
0
'
)
+
'
.html
'
,
}))
var
imgToc
=
Array
.
from
(
imgs
.
keys
())
.
map
(
fname
=>
({
file
:
fname
}))
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录