<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>EPUB &#8211; Mach3.laBlog</title>
	<atom:link href="https://blog.mach3.jp/tag/epub/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.mach3.jp</link>
	<description></description>
	<lastBuildDate>Thu, 13 Feb 2014 01:53:12 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9</generator>
	<item>
		<title>MarkdownからEPUB データを生成する「grunt-mdeb」を書いてみた</title>
		<link>https://blog.mach3.jp/2014/02/13/grunt-mdeb.html</link>
		
		<dc:creator><![CDATA[mach3]]></dc:creator>
		<pubDate>Thu, 13 Feb 2014 01:53:12 +0000</pubDate>
				<category><![CDATA[Laboratory]]></category>
		<category><![CDATA[EPUB]]></category>
		<category><![CDATA[Grunt]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Markdown]]></category>
		<guid isPermaLink="false">http://blog.mach3.jp/?p=3823</guid>

					<description><![CDATA[先日の記事で軽く触れた、Markdown から EPUB データを生成する Grunt タスクの体裁を整えてパブリッシュしてみました。 grunt-mdeb mach3/grunt-mdeb @ GitHub Grunt [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>先日の記事で軽く触れた、Markdown から EPUB データを生成する Grunt タスクの体裁を整えてパブリッシュしてみました。</p>



<figure class="wp-block-image"><img decoding="async" src="https://lh4.googleusercontent.com/-xyzdsDoO95M/Uvi88blGlPI/AAAAAAAACcs/l11vRUxF410/s400/2014-0210-00.png" alt="MarkdownからEPUB データを生成する「grunt-mdeb」を書いてみた"/></figure>



<p></p>



<span id="more-3823"></span>



<h2 class="wp-block-heading">grunt-mdeb</h2>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p><a href="https://github.com/mach3/grunt-mdeb">mach3/grunt-mdeb @ GitHub</a><br />
  Grunt task to publish markdown docs as EPUB 3.0 book.</p>
</blockquote>



<p>Markdown書類とJSONの設定ファイルからEPUBデータを作成します。 ナビゲーションドキュメント（論理目次＋視覚目次）はMarkdownを元に出力されるXHTMLから抽出されて自動的に生成されます。 名前の「mdeb」は「Markdown to eBook」の略です。</p>



<h3 class="wp-block-heading">動作環境</h3>



<p>タスクの中でシェルコマンドを叩いている箇所があるので、 bash等が動く環境でないと動作しません。 Mac OSX や Linux なら問題ありませんが、 Windowsの場合は Git CUI（MinGW）や cygwin 環境で使用する必要があります。 Git CUI は msysgit で Git 環境を導入していれば同梱されているのでお勧めです。</p>



<ul class="wp-block-list">
<li><a href="http://msysgit.github.io/">Git for Windows</a></li>



<li><a href="http://www.mingw.org/">MinGW | Minimalist GNU for Windows</a>（Git CUIの中身です）</li>



<li><a href="http://www.cygwin.com/">Cygwin</a></li>
</ul>



<h3 class="wp-block-heading">デモ兼ドキュメント</h3>



<p>ドキュメントは grunt-mdeb のリポジトリの「demo」の中に document.epub として保存されています。 これは実際に mdeb タスクで生成された EPUB データです。 変換される前の Markdown は demo/src に、EPUBデータにコンパイルされる前の XHTML データは demo/dest/tmp に格納されています。</p>



<ul class="wp-block-list">
<li><a href="https://github.com/mach3/grunt-mdeb/tree/master/demo/src">demo/src （Markdownデータ）</a></li>



<li><a href="https://github.com/mach3/grunt-mdeb/tree/master/demo/dest/tmp">demo/dest/tmp （XHTMLデータ）</a></li>
</ul>



<h2 class="wp-block-heading">基本的な使い方</h2>



<h3 class="wp-block-heading">1. インストール</h3>



<p>npm でタスクをインストールします。</p>


<pre class="wp-block-code"><span><code class="hljs">$ npm install grunt-mdeb
</code></span></pre>


<h3 class="wp-block-heading">2. タスクの設定</h3>



<p>Gruntfile.js で &#8220;grunt-mdeb&#8221; を読み込み、&#8221;mdeb&#8221; タスクを設定します。</p>


<pre class="wp-block-code"><span><code class="hljs language-css"><span class="hljs-selector-tag">grunt</span><span class="hljs-selector-class">.loadNpmTasks</span>("<span class="hljs-selector-tag">grunt-mdeb</span>");

<span class="hljs-selector-tag">grunt</span><span class="hljs-selector-class">.initConfig</span>({
    <span class="hljs-attribute">mdeb</span>: {
        dist: {
            options: {},
            <span class="hljs-selector-tag">src</span>: "<span class="hljs-selector-tag">src</span>",
            <span class="hljs-selector-tag">dest</span>: "<span class="hljs-selector-tag">dest</span>"
        }
    }
});
</code></span></pre>


<p><strong>src</strong> と <strong>dest</strong> は必須項目で、それぞれ元データと出力データの格納ディレクトリを指定します。 <a href="https://github.com/mach3/grunt-mdeb/blob/master/demo/src/data/06.md">options</a> は任意でオプションを設定してください。</p>



<h3 class="wp-block-heading">3. データ構成</h3>



<p>src ディレクトリの中に元データを格納していきますが、次のような構成にします。 （各ディレクトリの名前は先述のオプションで変更する事ができます）</p>


<pre class="wp-block-code"><span><code class="hljs">src/
├ assets/
├ data/
│ ├ cover.md
│ ├ 01.md
│ ├ 02.md
│ └ ...
└ publish.json
</code></span></pre>


<p><strong>data</strong> ディレクトリにはコンテンツの元になる Markdown 書類を格納します。 <strong>assets</strong> ディレクトリにはスタイルシートや画像などの依存ファイルを格納します。 assets ディレクトリの中身は全て複製されて EPUB データに同梱されます。</p>



<h3 class="wp-block-heading">4. publish.json</h3>



<p>publish.json には、タイトルや著者名をはじめ、EPUBデータを構成する為の情報を全て記述します。</p>


<pre class="wp-block-code"><span><code class="hljs language-javascript">{
    <span class="hljs-string">"meta"</span>: {
        <span class="hljs-string">"name"</span>: <span class="hljs-string">"document"</span>,
        <span class="hljs-string">"title"</span>: <span class="hljs-string">"My First Book"</span>,
        <span class="hljs-string">"author"</span>: <span class="hljs-string">"mach3"</span>,
        ...
    },
    <span class="hljs-string">"assets"</span>: {
        <span class="hljs-string">"coverImage"</span>: <span class="hljs-string">"assets/img/cover.jpg"</span>,
        <span class="hljs-string">"commonStyle"</span>: <span class="hljs-string">"assets/css/common.css"</span>,
        ...
    },
    <span class="hljs-string">"items"</span>: &#91;
        <span class="hljs-string">"data/cover.md"</span>,
        <span class="hljs-string">"data/01.md"</span>,
        <span class="hljs-string">"data/02.md"</span>
        ...
    ]
}
</code></span></pre>


<p>中のデータは３つのセクションにわかれています。</p>



<ul class="wp-block-list">
<li><strong>meta</strong><br /><br />書籍の基本的な情報を格納する</li>



<li><strong>assets</strong><br /><br />画像やスタイルシート等の情報を格納する</li>



<li><strong>items</strong><br /><br />コンテンツドキュメントの元となる Markdown ドキュメントを列挙する</li>
</ul>



<p>items の一番最初のドキュメントは表紙ページとして扱われる点にご注意ください。 項目のさらなる詳細やサンプルは <a href="https://github.com/mach3/grunt-mdeb/blob/master/demo/src/data/03.md">ドキュメント</a> に記してあります。</p>



<h3 class="wp-block-heading">5. コンパイルする</h3>



<p>mdeb タスクを実行して EPUB ファイルを生成します。</p>


<pre class="wp-block-code"><span><code class="hljs">$ grunt mdeb
</code></span></pre>


<p>コンパイルに成功すると、dest ディレクトリの中に生成した EPUB データと、EPUB に固める直前のデータが格納されています。</p>


<pre class="wp-block-code"><span><code class="hljs language-javascript">dest/
├ tmp/
│ ├ OEBPS/
│ ├ META-INF/
│ └ mimetype
└ <span class="hljs-built_in">document</span>.epub
</code></span></pre>


<h2 class="wp-block-heading">注意点</h2>



<ul class="wp-block-list">
<li><br /><p>中のシェルスクリプトには rm -r なども含まれているので、使用にはご注意ください。 コンパイルを開始する前に dest ディレクトリ内の *.epub ファイルと temp ディレクトリの中全てを削除してクリーンな状態にする様になっています。</p><br /></li>



<li><br /><p>一応バリデーションは通るように書かれていますが、あまり盲信せずに一応確認するようにしましょう。 <a href="https://github.com/mach3/grunt-mdeb/blob/master/demo/src/data/06.md">オプション</a> で、 コンパイル完了時に epubcheck を実行する事も出来るようになっています。 （別途 <a href="https://github.com/IDPF/epubcheck">epubcheck</a> のインストールが必要です）</p><br /></li>



<li><br /><p>grunt-mdeb を使用して被ったいかなる損害についても、対応はいたしかねます。</p><br /></li>
</ul>



<h2 class="wp-block-heading">まとめ</h2>



<p>私は物を書くときにいつも Markdown だったので、 そのまま EPUB に出来たら楽だろうな、と思って作ってみたパッケージです。 ブログを Markdown で書かれている方も多いと思うので、 何かの役に立つことがあれば。</p>



<h2 class="wp-block-heading">追記</h2>



<dl>
<dt>2014/02/13</dt>
<dd>サンプルコードの initConfig の中身が間違っていたので修正</dd>
</dl>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Amazon KDP で自費出版をしてみた話</title>
		<link>https://blog.mach3.jp/2014/01/31/amazon-kdp.html</link>
		
		<dc:creator><![CDATA[mach3]]></dc:creator>
		<pubDate>Fri, 31 Jan 2014 01:24:59 +0000</pubDate>
				<category><![CDATA[Laboratory]]></category>
		<category><![CDATA[Amazon]]></category>
		<category><![CDATA[EPUB]]></category>
		<category><![CDATA[Kindle]]></category>
		<category><![CDATA[Kindle Direct Publishing]]></category>
		<guid isPermaLink="false">http://blog.mach3.jp/?p=3817</guid>

					<description><![CDATA[昨年11月末から12月末にかけて当ブログにて掲載していた 「Alphabetical Advent Calendar」を題材にして Kindle ストアでの自費出版を試してみました。 紹介を兼ねて、備忘録など。 Java [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>昨年11月末から12月末にかけて当ブログにて掲載していた 「Alphabetical Advent Calendar」を題材にして Kindle ストアでの自費出版を試してみました。 紹介を兼ねて、備忘録など。</p>



<figure class="wp-block-image"><img decoding="async" src="https://lh3.googleusercontent.com/-3lX06hyJzzg/UuoLcwnxWUI/AAAAAAAACcE/Vz_zp5xycYM/s400/20140130-00.png" alt="Amazon KDP で自費出版をしてみた話"/></figure>



<p></p>



<span id="more-3817"></span>



<h2 class="wp-block-heading">JavaScript Alphabetical Advent Calendar 2013</h2>



<figure class="wp-block-image"><a href="http://www.amazon.co.jp/gp/product/B00I0ZHW6W/ref=as_li_ss_il?ie=UTF8&amp;camp=247&amp;creative=7399&amp;creativeASIN=B00I0ZHW6W&amp;linkCode=as2&amp;tag=mach3ss-22"><img decoding="async" src="http://ws-fe.amazon-adsystem.com/widgets/q?_encoding=UTF8&amp;ASIN=B00I0ZHW6W&amp;Format=_SL160_&amp;ID=AsinImage&amp;MarketPlace=JP&amp;ServiceVersion=20070822&amp;WS=1&amp;tag=mach3ss-22" alt=""/></a></figure>



<figure class="wp-block-image"><img decoding="async" src="http://ir-jp.amazon-adsystem.com/e/ir?t=mach3ss-22&amp;l=as2&amp;o=9&amp;a=B00I0ZHW6W" alt=""/></figure>



<p></p>



<p><a href="http://www.amazon.co.jp/gp/product/B00I0ZHW6W/ref=as_li_ss_tl?ie=UTF8&amp;camp=247&amp;creative=7399&amp;creativeASIN=B00I0ZHW6W&amp;linkCode=as2&amp;tag=mach3ss-22">JavaScript Alphabetical Advent Calendar 2013</a><img decoding="async" src="http://ir-jp.amazon-adsystem.com/e/ir?t=mach3ss-22&amp;l=as2&amp;o=9&amp;a=B00I0ZHW6W" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;"></p>



<p>こちらが制作してみた書籍になります。 基本的にはブログで掲載した内容とあまり変わりませんが、 リリースにあたって少し加筆修正などをしています。</p>



<h2 class="wp-block-heading">Kindle ストアでの自費出版の手順</h2>



<p>以下が出版までに踏んだ手順です。</p>



<ol class="wp-block-list">
<li>EPUBデータを制作する</li>



<li>epubcheck でバリデーションする</li>



<li>kindlegen でKindle用のデータに変換する</li>



<li>Kindle プレビューツールで内容を確認する</li>



<li>Kindle Direct Publishing に登録する</li>



<li>データを送って審査をうける</li>



<li>リリース</li>
</ol>



<h2 class="wp-block-heading">1. EPUBデータを制作する</h2>



<p>Kindle ストアにデータを送る前に、EPUB データとして書籍を制作します。</p>



<p>EPUB データの中身はXHTMLなのでWeb制作者の方ならそのまま記述していっても良いのですが、 インデックスなどを作るのが面倒だったので、 私は Markdown ファイルから EPUB データを生成する Grunt タスクを自前で書いて使いました。 （体裁が整ったらそのタスクも後日紹介するかもしれません） あるいは、<a href="https://code.google.com/p/sigil/">sigil</a> という電子書籍専用のエディタもあるので、導入してみてもよいかもしれません。</p>



<ul class="wp-block-list">
<li><a href="https://code.google.com/p/sigil/">sigil &#8211; The EPUB Editor &#8211; Google Project Hosting</a></li>
</ul>



<p>編集中の内容の確認には電子書籍ビューアを活用しますが、 各プラットフォーム向けに色々開発されており、それぞれ良い点悪い点などあるので試してみましょう。 私は <a href="http://www.adobe.com/jp/products/digital-editions.html">Adobe Digital Editors</a> で確認をしました。</p>



<ul class="wp-block-list">
<li><a href="http://www.adobe.com/jp/products/digital-editions.html">Digital publishing for professionals | Adobe Digital Editions Home</a></li>
</ul>



<h2 class="wp-block-heading">2. epubcheck でバリデーションする</h2>



<p>EPUB データが正しい情報を揃えているかどうかをチェックするツールが IDPF（International Digital Publishing Forum）からリリースされているので、 それを使ってバリデーションを行います。</p>



<ul class="wp-block-list">
<li><a href="https://github.com/IDPF/epubcheck">IDPF/epubcheck</a></li>
</ul>



<p>上記URLの「リリース」から最新版（執筆時点の最新バージョンは3.0.1）の epubcheck をダウンロードして任意の場所に保存し、 <strong>epubcheck-x.x.x.jar</strong> を java コマンドに渡して使用します。</p>


<pre class="wp-block-code"><span><code class="hljs">$ java -jar /the/path/to/epubcheck-3.0.1.jar mybook.epub
</code></span></pre>


<p>バリデーション結果は次のような感じにターミナルで出力されます。</p>


<pre class="wp-block-code"><span><code class="hljs language-css"><span class="hljs-selector-tag">Epubcheck</span> <span class="hljs-selector-tag">Version</span> 3<span class="hljs-selector-class">.0</span><span class="hljs-selector-class">.1</span>

<span class="hljs-selector-tag">Validating</span> <span class="hljs-selector-tag">against</span> <span class="hljs-selector-tag">EPUB</span> <span class="hljs-selector-tag">version</span> 3<span class="hljs-selector-class">.0</span>
<span class="hljs-selector-tag">No</span> <span class="hljs-selector-tag">errors</span> <span class="hljs-selector-tag">or</span> <span class="hljs-selector-tag">warnings</span> <span class="hljs-selector-tag">detected</span>.
</code></span></pre>


<h2 class="wp-block-heading">3. kindlegen でKindle用のデータに変換する</h2>



<p>EPUB をKindle書籍データに変換するツールは、Amazon KDP からリリースされています。</p>



<ul class="wp-block-list">
<li><a href="https://kdp.amazon.co.jp/help?topicId=A3IWA2TQYMZ5J6">Amazon Kindleダイレクト・パブリッシング：AmazonのKindleストアでの自費出版に関するヘルプ</a></li>
</ul>



<p>上記URLから各プラットフォーム向けのコマンドラインツールがダウンロード出来ます。 中にある <strong>kindlegen</strong> （あるいは kindlegen.exe） に EPUB ファイルを渡して実行すると Kindle 形式の .mobi ファイルが同じディレクトリに生成されます。</p>


<pre class="wp-block-code"><span><code class="hljs">$ kindelegen mybook.epub
</code></span></pre>


<p>生成中はエラーなどの情報がターミナルに出力されます。 エラーが出た場合は EPUB の構成を見なおして修正し、再度実行します。</p>



<h3 class="wp-block-heading">Kindle Comic Creator</h3>



<p>EPUBからの変換をする kindlegen の他に、コミックや絵本など、画像をベースにした書籍の制作用のツールも同じURLで提供されています。 こちらもそのうちに試してみたいですね。</p>



<h2 class="wp-block-heading">4. 端末やプレビューツールで内容を確認する</h2>



<p><a href="https://kdp.amazon.co.jp/help?topicId=A3IWA2TQYMZ5J6">Kindle プレビューツール</a> も Amazon KDP から公開されているので、そちらで確認を行います。 Kindle Fire HD / Kindle Fire HDX / Kindle Fire HDX 8.9″ の各モードでプレビューする事ができます。</p>



<p>私は手元に iPad mini しかなかった為、試しに iPad に送って閲覧してみましたが、 iOS版の Kindle は少し別の扱いをされているらしく、実際に KDP で販売しないとスタイルシートがほとんど無視されてしまいます。</p>



<p>販売後にダウンロードして閲覧したところ、きちんと表示されました。 これは正直なんとかしてほしいところですが、諸々の都合がありそうですね。</p>



<h2 class="wp-block-heading">5. Kindle Direct Publishing に登録する</h2>



<p>KDP のサービスにサインインします。 ログインするだけならすぐに出来ますが、そのままでは書籍はまだ販売できません。 販売にあたっては税の云々・署名の云々・支払いの云々でもう少し時間を割く事になります。</p>



<p>» <a href="https://kdp.amazon.co.jp/">Amazon Kindleダイレクト・パブリッシング：AmazonのKindleストアで自費出版を</a></p>



<p>具体的には、米国の市民権を持っているか・税法的にどうなの的な事を聞かれ、デジタル署名をする事になります。 私は生粋の日本人です。</p>



<h2 class="wp-block-heading">6. データを送って審査を受ける</h2>



<p>ダッシュボードの「新しいタイトルを追加」から、作った書籍を本棚に登録します。 タイトルや著者などの基本情報から、著作権の情報、価格とロイヤリティなどを設定し、書籍データを送信し、 送信後に審査がはじまって12時間ぐらいで結果が送られてきます。</p>



<h3 class="wp-block-heading">権利関係の確認</h3>



<p>私の場合はブログ記事の書籍化だった為、 「このサイトの内容を使ってるみたいだけど権利関係は大丈夫？」 という旨のメールが送られてきました。 「権利関係をすでに解決している場合」と「していない場合」の対応手順もメールに明記されていましたが、 いくつかわからない事があったのでその旨返信すると、数時間後に回答メールが届きました。 通知専用のアドレスではなくちゃんと担当者に届く様です。</p>



<h3 class="wp-block-heading">価格とロイヤリティ</h3>



<p>ロイヤリティには35%と70%の2種類がありますが、2.99〜9.99ドルの価格設定をしないと70%は選択できません。 執筆時点の日本円での価格設定は250円〜1250円です。 今回販売した物は120円にしたので1冊あたり40円ちょっとという事になりますね。</p>



<h2 class="wp-block-heading">7. リリース</h2>



<p>審査が通って出版されると、KDPから「提出された本がKindleストアで出版されました！やったね！」というメールが届きます。 お疲れ様でした！</p>



<h2 class="wp-block-heading">まとめ</h2>



<p>慣れてしまえば簡単に自費出版出来てしまいます。KDPすごい。 とりあえずおおまかな流れは把握出来ましたが、端末毎や Kindle の癖などもありそうなので、 これから色々試してみたいと思います。</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
