top


総投稿数 本 
no_

スポンサーサイト

 --------
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
カテゴリ :スポンサー広告 トラックバック(-) コメント(-)
no_1358

電子書籍 epub:2.0 と 3.0 の違いから構造を知ることにする ・・・ 【epub viewer を創ろ #1】

 2011-11-21
 電子書籍 epub。面白いですねぇ。知れば知るほど、今の状況が面白い。
まだまだ確立されてはないけれど、大きな潮の流れが現れて来てて・・・
木造船だけど、ここは飛び込まなきゃ。
 まずは、epub の構造をよく知るべく、そのために、
2.0 と 3.0 の違いをおおまかに把握することに。
 参考すべきは

EPUB 3 Changes from EPUB 2.0.1
EPUB 3 Changes from EPUB 2.0.1 「2.1 Changes in Document Organization」参考すべきドキュメントの比較整理もされていて、つたない読解力だが一応読み通しておく。

 いつものやり方で、まずは現物を見てみよう。

  詳しくは、追記に  ▼

more

************************************************
◎ まずは現物を見てみよう・・・
              :epub viewer を創ろ

************************************************


解析用 epub ファイル




【 epub2 ファイル 】
インプレスが発行している、
「電子出版ビジネスのためのデジタルファースト電子雑誌
Impress Digital Magazine「OnDeck」(オンデッキ)」
を利用させていただく。(ダウンロード)

世界の“絆”グラフ / World 'KIZUNA' Graph(FREE)
世界の“絆”グラフ / World 'KIZUNA' Graph(FREE) 内容は、世界中で行われている東日本大震災の被災者への応援活動の中から、69の国と地域、108点のメッセージの写真と解説文を掲載・・・というもので、しばしepub開発を忘れて内容に見入ってしまった。




【 epub3 ファイル 】
EPUB日本語基準研究グループが配布している、
「EPUB3サンプルコード 10/14 2011」
を利用させていただく。(ダウンロード)

EPUB日本語基準研究グループ EPUB3サンプルコード 10/14 2011
EPUB日本語基準研究グループ EPUB3サンプルコード 10/14 2011 内容には著作権などもあると思うので、構造の解析に利用させていただくにとどめる。




epub ファイル の解凍


 ここまでの理解で、
 ・epub ファイルは、
  "単なる zip圧縮されたファイルの
   拡張子を変えたもの" ・・・ということなので、
 epub ファイルの
 ・拡張子を
    .epub > .zip に変えて
 ・解凍してみる。


【 epub2 ファイル 】
   epub2 ファイル
標準的な格納方法にのっとり、content.opf と、toc.ncx が配置されている。


【 epub3 ファイル 】
   epub3 ファイル
独自命名か、mymedia.opf と、toc.xhtml が配置されている。


META-INFのファイルにアクセス


 まず、[META-INF/container.xml] を確認。


【 epub2 ファイル 】
<?xml version="1.0"?>
<container version="1.0" xmlns="urn:oasis:names:tc:opendocument:xmlns:container">
<rootfiles>
<rootfile full-path="OEBPS/content.opf" media-type="application/oebps-package+xml"/>
</rootfiles>
</container>



【 epub3 ファイル 】
<?xml version="1.0"?>
<container version="1.0" xmlns="urn:oasis:names:tc:opendocument:xmlns:container">
<rootfiles>
<rootfile full-path="OEBPS/mymedia.opf" media-type="application/oebps-package+xml"/>
</rootfiles>
</container>



 [rootfile] の位置を指定し、
 [media-type] は、oebps-package+xml であることの指定。
●wikipedia に掲載されている例をみると、
<?xml version="1.0" encoding="UTF-8" ?>
<container version="1.0" xmlns="urn:oasis:names:tc:opendocument:xmlns:container">
<rootfiles>
<rootfile full-path="OPS/book.opf" media-type="application/oebps-package+xml"/>
</rootfiles>
</container>
 encoding="UTF-8" も指定しておいた方がいいのかも。
●また、rootfile の格納場所は、OPS や OEBPS が標準のようだが、

EPUB日本語基準研究グループ
EPUB日本語基準研究グループ ここで配布されている「EPUB3日本語ベーシック基準を公開」を見ると、
   EPUB3日本語ベーシック基準を公開
標準的な命名で、基本的には変えてもいいようだ。

●ただし、rootfile 自体の名称は、「EPUB3日本語ベーシック基準」では、
   固有のものにすることが推奨されている
とあり、逆に固有のものにすることが推奨されている。

バージョン判断


 それぞれの rootfile を確認。


【 epub2 ファイル 】
<?xml version="1.0" encoding="UTF-8"?>
<package xmlns="http://www.idpf.org/2007/opf" unique-identifier="issue" version="2.0">
<metadata xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:opf="http://www.idpf.org/2007/opf">
<dc:title>世界の“絆”グラフ</dc:title>
<dc:creator opf:role="aut">インプレスR&amp;D</dc:creator>
<dc:publisher>インプレスR&amp;D</dc:publisher>
<dc:description>東日本大震災の被災者へ、海外から届いた応援メッセージの写真記録。69の国と地域、108点のメッセージを収録しています。</dc:description>
<dc:date opf:event="publication">2011-04-27</dc:date>
<dc:language>ja</dc:language>
<dc:identifier id="issue" opf:scheme="IRD">OnDeckSP01Kizuna</dc:identifier>
<meta name="cover" content="cover.jpg"/>
</metadata>
<manifest>
<item id="ncx" href="toc.ncx" media-type="application/x-dtbncx+xml"/>
<item id="Ahmedabad.jpg" href="Images/Ahmedabad.jpg" media-type="image/jpeg"/>
<item id="Australia.jpg" href="Images/Australia.jpg" media-type="image/jpeg"/>
・・・・
<item id="special.css" href="Styles/special.css" media-type="text/css"/>
・・・・
<item id="x001_bangladesh2.xhtml" href="Text/001_bangladesh2.xhtml" media-type="application/xhtml+xml"/>
<item id="x002_bangladesh1.xhtml" href="Text/002_bangladesh1.xhtml" media-type="application/xhtml+xml"/>
・・・・
</manifest>
<spine toc="ncx">
<itemref idref="cover_110427.xhtml"/>
<itemref idref="editor_in_chief_110421.xhtml"/>
<itemref idref="x001_bangladesh2.xhtml"/>
<itemref idref="x002_bangladesh1.xhtml"/>
・・・・
</spine>
</package>



【 epub3 ファイル 】
<?xml version="1.0"?>
<package xmlns="http://www.idpf.org/2007/opf" unique-identifier="pub-id" version="3.0" xml:lang="ja" >
<metadata xmlns:dc="http://purl.org/dc/elements/1.1/">
<dc:title>小さなメディアの必要(EPUB3作成サンプル版)</dc:title>
<dc:creator id="creator">津野海太郎</dc:creator>
<meta refines="#creator" property="role" scheme="marc:relators" id="role">aut</meta>
<dc:publisher>株式会社ボイジャー</dc:publisher>
<dc:language>ja</dc:language>
<dc:identifier id="pub-id">urn:uuid:9601A66E-552B-4361-AC97-BB91376E4A1D</dc:identifier>
<meta property="dcterms:identifier" id="isbn-id">urn:isbn:9784794936639</meta>
<meta property="dcterms:modified">2011-09-22T08:30:00Z</meta>
</metadata>
<manifest>
<item id="TOC" href="toc.xhtml" properties="nav" media-type="application/xhtml+xml" />
<item id="XHTML001" href="text/mymedia_001_cover.xhtml" media-type="application/xhtml+xml" />
<item id="XHTML002" href="text/mymedia_002_title.xhtml" media-type="application/xhtml+xml" />
・・・・
<item id="cover" href="images/cover.jpg" properties="cover-image" media-type="image/jpeg" />
<item id="farmer" href="images/farmer.png" media-type="image/png" />
・・・・
<item id="table" href="images/table_v1_1.svg" media-type="image/svg+xml" />
・・・・
<item id="ebook_common" href="styles/ebook_common.css" media-type="text/css" />
・・・・
</manifest>
<spine page-progression-direction="rtl">
<itemref idref="XHTML001" />
・・・・
</spine>
</package>



●epub のバージョンは、[package]>[version] で取得でき
●構造に大きな違いはないようだ。
●すごく安易な理解だけれど
 [metadata] で、全体のプロパティを設定し
 [manifest] で、内容構造
 [spine] で、表示順を設定 ということだろうか。
※前述 EPUB日本語基準研究グループ配布の「EPUB3日本語ベーシック基準」でも、
   EPUB3日本語ベーシック基準
概ね、そういうことのようだ。

なかなか楽しくなってきたぞ。


commentsコメント
comment_post












管理者にだけ表示を許可する
commentトラックバック
トラックバックURL:
http://metaboy.blog23.fc2.com/tb.php/1358-95ce8b7a
ようこそ
Add to Google 創るmetaboy:RSSフィード
My Yahoo!に追加
最新記事のRSS | 問い合わせ

仕事検索、アルバイト検索、依頼仕事の検索ポータル - 仕事検索.COM - www.jobkensaku.com ツクルン

創るmetaboy - WEB創る、サイト創る、何創る - 創ったmetaboy

 

リンク集

 

最近の記事

 

ブロとも申請フォーム
Sponserd by

さくらのレンタルサーバ さくらのレンタルサーバ
大容量・高機能レンタルサーバー heteml 大容量・高機能レンタルサーバー heteml
XREA (ValueDomain)
お名前.com お名前.com
名づけてねっと名づけてねっと
ムームードメインムームードメイン

 

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。