AozoraEpub3

hmdev edited this page Feb 8, 2015 · 14 revisions
Clone this wiki locally

AozoraEpub3

説明

青空文庫テキスト→ePub3変換
青空文庫の注記入りテキストファイルをePub3ファイル(zip圧縮)に変換するツールです

  • 青空文庫txtのテキスト+画像ファイル(またはzip)をePub3に変換
  • Web小説のHTMLを取得して青空文庫txt形式で保存してからePub3に変換
  • 画像zip/rarをePub3に変換
    が可能です。

利用上の注意

利用は自己責任でお願いします。

  • 現状、いくつか対応していない注記があります。
  • 青空文庫の注記仕様外の注記等で変換したxhtmlエラーで章ごと表示されない場合があります。
  • Sony Reader, Kobo, Kindle 以外の動作は確認できていません。

バグや変換できない注記があった配布サイトで報告お願いします。

変換時の注意

コメントの異常、対応していない注記、変換できなかった外字は変換時のログに表示されるので適宜元テキストを修正してください。

  • 仕様外や一部の揺らぎのある注記は対応しません。
  • 外字注記内で外字注記が使われている場合はエラーになります(対応予定無し)
    →※[#「姉」の正字、「女+※[#第3水準1-85-57]のつくり」 とログに出たら
    該当部分の元テキストを ※[#「姉」の正字、U+59CA]に修正
  • 注記内に注記がある底本コメント注記は削除してください

動作環境

Java 7 / Java 8 の動作環境 ( http://www.java.com/ja/ )

使い方

インストール

 AozoraEpub3-*.zip を任意のフォルダに解凍します。

起動

 AozoraEpub3.jar をダブルクリックして実行します。
 ショートカットの作成時はjava.exeを指定します。
  例: "C:\Program Files (x86)\Java\jre7\bin\java.exe" AozoraEpub3.jar
    作業フォルダーを AozoraEpub3.jar のパスにする

 またはコンソールから "java -jar AozoraEpub3.jar" でも実行可。
 ※javaが見えなければフルパスで指定
  例: "C:\Program Files (x86)\Java\jre7\bin\java.exe" -jar AozoraEpub3.jar

変換

 表示されたアプレットのテキストエリアに、変換したい青空文庫テキストファイル(拡張子txtまたはzipまたはrar)
 (複数可)をドラッグ&ドロップします。(「ファイル選択」から開くでも同じ)
 指定した出力先に「元ファイル名.epub」または「[著作者名] 表題.epub」のファイルが生成されます。
 ※テキストのない画像のみのzip/rarを変換した場合は、画像のみのePubファイルを生成します。

 Web小説サイトの作品一覧ページのURLまたはURLショートカット(.url)のドラッグ&ドロップでの取得と変換も可能です。
 (web/ 以下に定義ファイルがあるサイトのみ)

画面設定

表題

  • 本文内
    本文内のタイトルと著者名の有無を設定します。
    3行連続の場合はタイトルの次は副題してタイトルと連結します。
    本文中のタイトルは大きい文字で、著者名地付きに設定されます。
    画像や空行は無視されます。
  • ファイル名優先
    "[著作者名] 表題.epub" のファイル名からタイトルと著者名を取得します。
    本文中のタイトル行と著者名の行のスタイル設定は本文内の選択に従います。

表紙

  • 表紙
    表紙の画像を[先頭の挿絵][入力ファイル名と同じ画像(png,jpg)][表紙無し]またはファイル、URLを指定します。
    [入力ファイル名と同じ画像(png,jpg)]は、入力ファイル名と拡張子以外が同じ画像を表紙に利用します。
    (拡張子は以下の順でチェックpng,jpg,jpeg,gif)
     表紙画像がない場合はテキストファイルと同じ場所の cover.jpg/png を確認画面で表紙として選択されます。

ページ出力

  • 表紙
    ePubの先頭に表紙ページ(画像は幅100%)を追加します。
    Reader等で表紙を出したい場合に指定してください。
    (文中の挿絵を表紙に指定している場合は先頭に移動されます)
     機種によっては画像サイズを拡大しておく必要があります。

  • 表題 表題、著者等のページを左右中央または横書きの単一ページで出力します。

  • 目次
    目次ページを出力する場合に選択します。
    縦書きと横書きが選べます

  • 拡張子 出力ファイルの拡張子を指定します。
    (Koboでの利用はkepub.epub、 Kindleはmobiを選択)

  • 出力ファイル名に表題利用
    "[著作者名] 表題.epub" のファイル名で出力します。
    どちらも設定されていない場合は「元ファイル名.epub」で出力します。

  • ePubファイル上書き 同名のファイル(元ファイル名.epub)がすでにある場合でも上書きして出力します。
    チェックを外すとエラーを表示して変換しません。

出力先

  • 出力先
    出力先を指定する場合にフルパスを設定します。

変換

  • 入力文字コード
    入力する青空文庫ファイルの文字コードを指定します。通常はMS932(SJIS)です。
  • 縦書き 横書き
    本文の縦書きと横書きを指定します。
  • ファイル選択
    ファイルを選択するとテキストエリアにドラッグアンドドロップするのと同様に変換されます
  • 変換前確認
    変換前に、タイトルと著者名と表紙の確認と編集が可能なダイアログを表示します。
    修正したタイトルと著者名でメタデータが作成されます。
    本文側のタイトルやスタイルは変更されません。
    表紙はトリミングした画像を出力し、元画像を残す指定も可能です。

画像設定

  • 挿絵なし
    テキスト内の挿絵画像を表示せずePubファイルにも格納しません。 表紙と外字画像は出力されます。
  • 画面サイズ
    画面の縦横比と、小さい画像を拡大しない場合の判別に利用します
  • 画像単ページ化
    文中の画像の前後に改ページを入れて単ページ化する対象の画像サイズを設定します
    単ページ化することで画像周辺の余白が小さくなります
  • 小さい画像を拡大表示
    画面サイズより小さい画像は画面の縦か幅に合わせて拡大表示されます
  • 画像縮小
    縦x横の画素数または横・横のピクセル数以下になるように画像を縮小します (縮小アルゴリズムはBicubic)
    端末のサイズ制限がある場合に設定してください
  • 表紙画像
    表紙画像はこのサイズ以下になるように縮小します
  • 縮小時のJpeg画質
    縮小処理を行うときのJepgの圧縮パラメータです 100が最高画質です
  • 余白除去
    画像の上下左右の余白を除去します。 縦書き小説向けに調整してあります。
    pngは入出力に時間がかかるのと圧縮率の関係で若干サイズが大きくなります。
    (推奨設定 横:15% 縦:10~20% 白レベル:85~90% 余白追加: 0.5%~1.0%)
    ノンブルを指定した場合でノンブルがあるとさらに5%除去制限を広げます
    ノンブルのサイズは文字部分の縦比率2.0~3.0%を指定してください。

詳細設定

  • 文中全角スペースの処理
    ?の後などに全角スペースがある場合に2行目以降で行頭に来て段落のように見えてしまうためスペースを非表示にします
  • 空行除去
    1行以上の連続した空行単位で指定した行数の空行を減らします。
    見出し行の後ろ3行から始まる空行は最低1行残します。
    最大を指定するとこれ以下の空行になるように除去します。
  • 行頭字下げ
    行頭が「『―”(〈〔【と全角空白以外なら行頭に全角空白を追加します 半角空白のみは全角に置き換えます。
  • 自動縦中横
    2文字の半角の数字と2~3文字の!と?を縦に並べて表示します。
     数字1桁3桁、!?の1文字は、設定で縦中横にするか変更できます。
     前後に全角の文字が無い場合(間の半角スペースは無視)や、横組み注記の中では無効になります。
  • コメントブロック出力
    50文字以上の - の行で挟まれたコメントブロックの表示方法を指定します。
  • 強制改ページ
    有効にすると、指定バイト数で強制改ページを行います。
    ePub内の各xhtmlファイルのサイズや行数が増えることで、Reader等で処理が重くなるのを防ぎます。
    字下げ等のブロック注記等の中にある場合は改ページされません。
    各行: 指定バイト数を超えた行で強制改ページします。
    空行: 空行が指定行数続いたとき指定バイト数を超えていたら強制改ページします。
    見出し前: 目次の見出しに該当する行の前で指定バイト数を超えていたら強制改ページします。

目次設定

  • 目次出力
    最大文字数: 目次の名称の最大文字数を設定します。長い文字が省略された場合は ... がつきます。
    表紙: 表紙ページへの目次を出力します。 表紙画像が無い場合は出力されません。
    次の行を繋げる: 章タイトルが次の行にある場合等で、見出しの次の行の文字を目次の名称に繋げます。 連続する見出しを除外: 目次ページ等で自動抽出された見出しを目次に入れません。
  • 目次抽出
     改ページ後: 改ページ後に最初の文字の行を目次に追加します。
    注記: 選択した見出し注記内の文字を目次に追加します。ブロック注記の場合は次の行(繋げた場合の2行)のみ
    章見出し: 章の名前(数字含む)を自動で抽出して目次に追加します。
    (第~話/第~章/第~篇/第~部/第~節/第~幕/その~/~章/プロローグ/エピローグ/モノローグ/序/序章/終章/間章/転章/幕間)
    数字のみ: 数字のみの行を目次に追加します。
    数字+見出し: 数字+空白等+見出し文字 の行を目次に追加します。
    数字(括弧内): 括弧内の数字のみの行を目次に追加します。()〔〕【】
    数字(括弧内)+見出し: (数字)+空白等+見出し文字 の行を目次に追加します。
    その他パターン: 目次抽出パターンを正規表現で指定します。前後の空白と注記タグを除いた文字列と比較します。

使い方 CUI

####コマンドラインからの実行  Usage: java -cp AozoraEpub3.jar AozoraEpub3 [-options] input_files(txt,zip)

オプション

  • -h,--help
      show usage

  • -i,--ini
      指定したiniファイルから設定を読み込みます (コマンドラインオプション以外)
      (指定がない場合はAozoraEpub3.ini ファイルがなければデフォルト値)

  • -enc
      入力ファイルエンコード [MS932](default) [UTF-8]

  • -t
      本文内の表題種別 [0:表題→著者名](default)[1:著者名→表題][2:表題→著者名(副題優先)][3:表題のみ][4:なし]

  • -c,--cover
      表紙画像 [0:先頭の挿絵][1:ファイル名と同じ画像][ファイル名 or URL]

  • -tf
      入力ファイル名を表題に利用

  • -d,--dst
      出力先パス

  • -ext
      出力ファイル拡張子 [.epub](default) [.kepub.epub]

  • -of
      出力ファイル名を入力ファイル名に合せる

ファイルの説明

プログラムファイル

  • AozoraEpub3.jar ePub3変換ツール
    ダブルクリックまたは"java -jar AozoraEpub3.jar"で実行
  • AozoraEpub3.ico ショートカットを作成時にこのアイコンを指定してください(jarなので設定できない)
  • lib/以下の *.jar ファイル 利用ライブラリ (commons-cli, commons-compress, Velocity, JAI)

ePub3テンプレート

  • template/*
    ePub3テンプレート
  • template/OPS/css/*.css
    ePub3スタイル

変換用設定ファイル

  • chuki_tag_suf.txt
    前方参照型注記を開始終了型注記に変換
  • chuki_tag.txt
    注記をePubタグに変換
  • chuki_alt.txt
    外字注記を代替文字に変換
  • chuki_utf.txt
    外字注記(コード無し)をUTF-8文字に変換
  • chuki_ivs.txt
    外字注記(コード無し)をIVS付きのUTF-8文字に変換
  • chuki_latin.txt
    ラテン文字注記をUTF-8に変換
  • replace.txt
    文字置換設定ファイル

外字フォント

  • gaiji/*
      1文字フォントファイルを置くことで外字を対応フォントで表示します。

対応している注記

基本的な注記に設定ファイルで対応

chuki_tag.txt 参照

*機種別の対応状況
横組みはKoboとReaderのみ対応

例外的にプログラム処理しているもの

  • ページの左右中央
    -[#注記付き]○[#「△」の注記付き終わり]と[#「○」に「△」のルビ] → |○《△》に変換
  • [#「○」に×傍点] → 文字と同数の×ルビに変換
  • 字下げ連続時の[#ここで字下げ終わり]の省略
  • 字下げ折り返しと字下げ字詰めは数値化してインデント計算
    [#ここから○字下げ、折り返して●字下げ][#ここから○字下げ、●字詰め]
  • 字下げ複合はclassを合成 (罫囲み、中央揃え)
  • 画像 (キャプション、サイズ指定は未対応)
    [#説明(ファイル名.拡張子)]
    <img src="ファイル名"/>
  • 底本: で改ページ (直前に改ページがない場合)

対応している外字表記と特殊文字

  • 外字注記をコード変換してUTF-8文字で出力 (UTF8コード、JISコードあり)
    ※[#「さんずい+垂」、unicode6DB6]
    ※[#「さんずい+垂」、U+6DB6、235-7]
    ※[#「さんずい+垂」、UCS6DB6、235-7]
    ※[#「てへん+劣」、第3水準1-84-77]

  • コード記述がない外字注記は名称からUTF-8に変換 (chuk_utf.txt, chuki_ivs.txt)

  • UTF-8にない外字注記は代替文字を出力 (chuk_alt.txt)

  • くの字点「/\」「/″\」をUTF-8で出力

未対応注記

  • 左ルビ
  • 行内の地付き
  • 2段組