KDP(電子出版)のメモ 急急如律令

Amazon Kindleダイレクト・パブリッシングでの電子出版や電子書籍の作成販売について、文章やイラストの作成や編集方法について書いています。

FixedEpub3JSをテンプレートエンジンを利用するように改造

 EPUB生成とUIの分離をしたいなと思いながら、あまり手を付けていなかった。最近どうなのと思って手を入れています。ただ、サイトの検索しているとコピーサイトが見つかった。githubで公開しているのでライセンスを明確にすべきなのだろうか。jsのライブラリとして分離すればそっちを使ってくれる気がするのだが。

kyukyunyorituryo.github.io

ejsというテンプレートエンジンをnode.jsでは使っていたのだけど、クライアントサイドJSでは無いと思っていたが、あったので使ってみている。npm版ではejsを利用していたので、ベースをこっちにすればわりとすんなり作れるかも。

www.npmjs.com

 

怪しいアイコンだが、Client-side supportでみつけて、ejs.min.jsがダウンロードできる。基本的にはnode.jsのものと変わらないようですね。

 

 

github.com

<script src="ejs.min.js"></script>

で読み込んで、

 

var opftemplete = ' <!-- 作品名 -->\n <dc:title id="title"><%= title %></dc:title>\n <!-- 著者名 -->\n <dc:creator id="creator01"><%= creator1 %></dc:creator>'
var opf = ejs.render(opftemplete, {    title: "タイトル",    creator1: "著者1"})

console.log(opf)

 

出力結果

<!-- 作品名 -->
<dc:title id="title">タイトル</dc:title>
<!-- 著者名 -->
<dc:creator id="creator01">著者1</dc:creator>

 

  • 作りたいファイルの情報をブラウザの操作で作る。
  • ファイルの情報をオブジェクトにする。
  • オブジェクトからEPUBを生成する

今まではどうしても画面の部品をいじると、EPUB生成の部分までコードを書き換える必要があったので、探すのが面倒だった。オブジェクトからEPUBを生成する部分だけライブラリにして公開したらいいかな。

 

Internet Explorerで動くようにするためにejsを利用した。まだバグチェックができていないのと、コードがグチャってしているので見落としが多そう。

 https://kyukyunyorituryo.github.io/FixedEpub3JS/index_beta.html

Kindleインディーズマンガの3月分の分配金が決定

 公開してから何ヶ月もたっている本でも、キンドルインディーズで収益があるようで。分配金の額についてまとめていたらわかりますね。新しく投稿される方の発掘の場というのを考えると成功しているのかも。最近上位層の金額がわからないので、どんな感じなのでしょう。

 

 

 

POT! P・O・T!!

POT! P・O・T!!

 
魔法少女は三十代

魔法少女は三十代

 

 

 

イオン ?A dog isn't consumed,either?

イオン ?A dog isn't consumed,either?

 

 

 

腐桃太郎

腐桃太郎

 

 

 

 

 

「悲劇のプリズン」というタイトルだが、アダルトカテゴリーだったのでブログでは貼れそうになかった。検索すればいいと思う。

 

いっそのこと自分で出してみればどんな感じかわかるんのだろうが。俺は漫画を描けるのか、いやむしろ載せていいもんなのだろうか、などと考えてしまう。

SigilのEPUB3の動作検証

 Sigilなー、EPUB3のファイルを開くとEPUB2に変換してしまっていた。そして中身はぐちゃぐちゃになったから使わないでいた。EPUB3に対応したというのでまた少しいじってみることにしました。

sigil-ebook.com

 インストールしたままではEPUB2らしいので下の記事のとおりに設定を変えてEPUB3にしました。

www.lifelogweb.com

EPUB3でバリデーションが通っているファイルをSigilに読み込んでから、少し書き換えた。そして、EPUBチェックに通してみると、問題なくバリデーションが通っていました。

 Sigilは使えるかもしれない、OPFをみたらmetaタグにsigilのバージョンが書き込まれていた。

Amazonでのアンドロイドアプリの配信について

 アンドロイドスタジオでアンドロイドアプリを作ったら、グーグルプレイで公開するのが一般的なようである。グーグルプレイでの公開の説明は多いけど、その他のアマゾンでのアプリの配信はあまりない感じだ。例えば、アマゾンアフィリエイトで収益を上げている人が、アマゾンのアンドロイドアプリで公開したらアフィリエイトの収益が増えるのだろうかと気になっている。

 アマゾンのfire端末向けに作るとなにかいいことがあるだろうか。正直ストアごとの決まり事がよくわかっていない。

 なんとなく、アンドロイドアプリをつくっているが、jsでやるjavaでやるかをみてた。 例えば、javaのコードを見てもなんとなくjavascriptとの違いから感覚的に避けてしまうことがあって、あまり思い通りに作れないのだが。webview使ってやればjsを使えるので、それでいいのとおもったが。webviewからの取り込み方が無駄に複雑化している気がして面倒な気もする。

  こういう、アンドロイドアプリで文章の感じにふりがなを振るアプリを考えた。

ただ、サーバーサイドで十分だよな。
qiita.com

kuxumarin.hatenablog.com

 

AozoraEpub3の左右中央表示

 AozoraEpub3のコードを読んでいたんだが、これは長編小説並みの分量があるな。まぁ全部を読む必要はないのだろうけど。なので、観ながらメモっていこうかと思っている。

https://github.com/kyukyunyorituryo/AozoraEpub3/wiki

後で、wikiにでもまとめておこうかと。

 

  以前書いたこのAozoraEpub3使って作った本がどの程度今でも動くのだろうかと、確認も込めて試してみたいのだが。正直そんなにリフローEPUBについては詳しくない気がするのだが。

EPUB縦書組版

EPUB縦書組版

 

 AozoraEpub3中身の整理

srcフォルダー

ソース

 

コマンドラインから操作する

AozoraEpub3.java

GUIで起動する

AozoraEpub3Applet.java

青空文庫テキストをePub3形式のXHTMLに変換する本体は

converter/AozoraEpub3Converter.java

 

webフォルダー

小説投稿サイトの定義データ

templateフォルダー

テンプレートが入っている

 

扉の表示 

 

扉部分で左右中央表示のスタイルシートをどうするか。位置ページが増加した挿絵を可能にできるかというのを詰めてみる。

https://github.com/kyukyunyorituryo/AozoraEpub3/blob/master/template/OPS/css/vertical_middle.css

https://github.com/kyukyunyorituryo/AozoraEpub3/blob/master/template/OPS/xhtml/xhtml_header.vm

https://github.com/kyukyunyorituryo/AozoraEpub3/blob/master/template/OPS/xhtml/xhtml_footer.vm

<body>
<table class="middle"><tr><td>
<p id="kobo.1.1">ページの左右中央</p>
</td></tr></table>
</body>

 

/* 左右中央 */
table.middle td {
vertical-align: middle;
}

 こうなるように書き換えた

 <div class="middle">

<p id="kobo.1.1">ページの左右中央</p>

</div>

 

 

.middle{
margin-left:auto;
margin-right:auto;
-epub-writing-mode:vertical-rl;
writing-mode:vertical-rl;
height:100%;
}

 扉、左右中央表示

[#ページの左右中央]

http://kumihan.aozora.gr.jp/layout3.html

 

http://densyodamasii.com/?page_id=2066

http://ebpaj.jp/counsel/guide