電子書籍自費出版系情報まとめ

このエントリーをはてなブックマークに追加

最近、電子書籍系のアプリ開発中で、色々調べています。 ちょっと情報が頭に乗り切らなくなってきたので、整理。


ツール

Kindlegen

Amazon謹製の、HTMLやEPUB形式からMobi形式に変換するツール。 成果物は、MacなどのKindleアプリでも見られるし、Kindle Previewerで、各プラットフォームでの動作チェック可能。

クラス構造を一旦HTMLに落とし込んで、Mobi形式にエクスポートするところまでは出来たけど、いくつか警告が出てたりしてまだ対処出来ていない状態。 あと、ライセンス的にアプリのサーバー側で使ったりOKなのか気になる。

Pandoc

ドキュメント形式変換ツール。Markdown, HTMLなどからEPUB, PFDなどなどなど色々変換可能。 Linux, Mac, Windowsなどに対応。

例えばMarkdown形式からEPUB形式にしたいときの、タイトルや筆者などのメタ情報とかこう書いたりするらしい。まだ色々調べ中。 これを使って、クラス構造をEPUB形式でエクスポートできるところまでは出来たけど、細かい詰めがまだまだ(´-ω-`)縦書きとか出来るのだろうか…。

% title
% author(s) (separated by semicolons)
% date

Amazon和書

うーん、作り方がバラバラ。わりとGoogle Documentで作るのが多数派な印象だけど。 みんなGUIベースだから直接は利用できないけど、参考程度に読んでる。

Amazon洋書


JSON周りの開発用ライブラリ(iOS, .NET)

iPhoneアプリで編集してサーバー(ASP.NET)で変換して返すみたいなことをしているけど、その場合やっぱりJSONでのやり取りかなということで、以下が手軽に出来るようにしたかった。

  • Objective-CのクラスからJSONへ変換
  • JSONからC#のクラスへマッピング

Objective-CのクラスからJSONへ変換

Mantleというライブラリでさくっとできた。もちろんCocoaPods対応なので導入も楽。

  • JSON化したいクラスでMTLModel<MTLJSONSerializing>を継承
  • オブジェクトのプロパティ名とJSONのプロパティ名のマッピング
  • 配列構造のプロパティに対しては、その定義
  • 上記の設定をしとけば定型的な数行でJSON化

JSONからC#のクラスへマッピング

.NETの標準シリアライザ(XML/JSON)の使い分けまとめ にあるとおり、DataContractJsonSerializerを使用。 ちなみに上記サイトは僕の作ったこのブックマークレットで目に優しくなります。

基本的にはクラスにDataContract属性、プロパティにDataMemberを付けるだけと楽ちん(´-ω-`) 強いていえば、大文字小文字マッピングの設定を忘れずに。

[DataMember(Name = "title")]
public string Title { get; set; }

その他リンク

色々調べる中で目に入ったリンクなど。


所感

色々調べごとが多くて、開発自体がなかなか進まない(´-ω-`)

あと、Dropbox API が今回良い感じに組み合わせられそうで、ちょっと検討中。