Kindle要停用MOBI與AZW格式,轉用更通用的ePub格式了。如果你跟我一樣經常自製電子書的話,可以參考我的製作步驟,以簡化產生ePub電子書的操作流程:
先手動執行,等有空時再寫個程式簡化整個操作流程吧。
用下列命令設定blat指令要連線的SMTP主機與登入帳號、密碼:
[!TIP] 命令
blat -install SMTP主機 電子信箱 5 -u 登入帳號 -pw 登入密碼
- 例如:
blat -install mycompany.com [email protected] 5 -u myname -pw mypassword
- 5是重試次數
範例如下:
document.selection.Replace("^第(.*)章(.*)", "第$1章 $2",eeFindNext | eeFindSaveHistory | eeReplaceAll | eeFindReplaceRegExp); document.selection.Replace("^第(.*)章(.*),(.*)", "第$1章 $2·$3",eeFindNext | eeFindSaveHistory | eeReplaceAll | eeFindReplaceRegExp); document.selection.Replace("^第(.*)章(.*),(.*)集", "第$1章 $2·$3",eeFindNext | eeFindSaveHistory | eeReplaceAll | eeFindReplaceRegExp); document.selection.Replace("^第(.*)卷 (.*) 第(.*)章 (.*)","## 第$1卷 $2 第$3章 $4",eeFindNext | eeFindSaveHistory | eeReplaceAll | eeFindReplaceRegExp); document.selection.Replace("^第(.*)卷(.*)第(.*)章(.*)","## 第$1卷 $2 第$3章 $4",eeFindNext | eeFindSaveHistory | eeReplaceAll | eeFindReplaceRegExp); document.selection.Replace("^第(.*)卷 (.*)","# 第$1卷 $2",eeFindNext | eeFindSaveHistory | eeReplaceAll | eeFindReplaceRegExp); document.selection.Replace("^卷(.*) (.*) (.*)章 (.*)", "## 第$1卷 $2 第$3章 $4",eeFindNext | eeFindSaveHistory | eeReplaceAll | eeFindReplaceRegExp); document.selection.Replace("^正文 第(.*)章 (.*)","## 第$1章 $2",eeFindNext | eeFindSaveHistory | eeReplaceAll | eeFindReplaceRegExp); document.selection.Replace("^第(.*)章 (.*),(.*)","## 第$1章 $2·$3",eeFindNext | eeFindSaveHistory | eeReplaceAll | eeFindReplaceRegExp); document.selection.Replace("^第(.*)章 (.*),(.*)","## 第$1章 $2·$3",eeFindNext | eeFindSaveHistory | eeReplaceAll | eeFindReplaceRegExp); document.selection.Replace("^第(.*)章 (.*)","## 第$1章 $2",eeFindNext | eeFindSaveHistory | eeReplaceAll | eeFindReplaceRegExp); document.selection.Replace("^第(.*)章:(.*)","## 第$1章 $2",eeFindNext | eeFindSaveHistory | eeReplaceAll | eeFindReplaceRegExp); document.selection.Replace("^第(.*)集 (.*)","## 第$1集 $2",eeFindNext | eeFindSaveHistory | eeReplaceAll | eeFindReplaceRegExp); document.selection.Replace("^正文 第(.*)節 (.*)","## 第$1節 $2",eeFindNext | eeFindSaveHistory | eeReplaceAll | eeFindReplaceRegExp); document.selection.Replace("^正文 第(.*)章(.*)","## 第$1章 $2",eeFindNext | eeFindSaveHistory | eeReplaceAll | eeFindReplaceRegExp); document.selection.Replace("^第(.*)節 (.*)","## 第$1節 $2",eeFindNext | eeFindSaveHistory | eeReplaceAll | eeFindReplaceRegExp); document.selection.Replace("^===第(.*)===","## 第$1",eeFindNext | eeFindSaveHistory | eeReplaceAll | eeFindReplaceRegExp);
[!TIP] 命令
pandoc 書名.txt -f markdown –toc –metadata title=”書名” –metadata author=”作者名” –metadata lang=”zh-Hant” –css style.css -o 書名.epub
html {
font-size: 100%;
-webkit-text-size-adjust: 100%;
-ms-text-size-adjust: 100%;
}
body {
font-family: "黑体", "圆体", "宋体", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", serif;
margin: auto;
text-align: justify;
font-size: 16px;
line-height: 1.0;
}
h1 { text-align: left; }
h2 { text-align: left; }
h3 { text-align: left; }
h4 { text-align: left; }
h5 { text-align: left; }
h6 { text-align: left; }
h1.title {
margin-top: 150px;
font-size: 20pt;
text-align: center;
}
p.author {
text-align: center;
font-size:18pt;
}
ol.toc {
padding: 0;
margin: 1em 0;
padding: 0 0 0 2em;
}
ul.toc ul, ol.toc ol {
margin: .3em 0;
}
li { margin: 0; padding: 0 5px; }
code {
font-family: monospace;
background-color: rgb(247, 247, 247);
}
pre {
font-family: monospace;;
padding: 16px;
overflow: auto;
font-size: 80%;
line-height: 1.45;
border-radius: 3px;
background-color: rgb(247, 247, 247);
}
.epub是壓縮檔,可以用7-Zip等壓縮工具查看其內容。
因為GMail等網站都有傳送信件最大25MB的限制,因此blat設定時最好使用平常使用的公司SMTP主機。
[!TIP] 命令
blat – -to Kindle電子信箱 -s “主旨” -body “內文” -log blat.log -force8bit -charset utf-8 -unicode -attach “書名.epub”
type blat.log
##