Ver.0.38からLeMEファイル(*.leme)の保存形式がJSON形式に変更されました。本ページではLeMEファイルの仕様を説明します。
従来の形式も引き続き読み込み可能ですが、上書き保存すると新しいJSON形式に変更され元には戻せません。0.42以降で変更した一部の項目名も同様です。
--leme-file
オプションでも使用できます。
仕様
ファイルエンコード
UTF-8です。
本の情報
項目 | 型 | 内容 |
info.title | string | タイトル(必須) |
info.titleKana | string | タイトルのカナ |
info.creator1 | string | 著者名1(必須) |
info.creator1Kana | string | 著者名1のカナ |
info.creator2 | string | 著者名2 |
info.creator2Kana | string | 著者名2のカナ |
info.publisher | string | 出版社(必須) |
info.publisherKana | string | 出版社のカナ |
info.identifier | string | コード(ISBNなど) |
info.language | int | 言語 ja, enなど 詳細は選択可能な言語を参照してください。 |
contents | array | 「コンテンツの情報」のリスト(必須) リストに並んでいる順番に変換します。 ソートはしません。 |
本の仕様
項目 | 型 | 内容 |
spec.pageProgressionDirection | string | 綴じ方向 right : 右綴じ left : 左綴じ |
spec.textFlowDirection | string | 書字方向 auto : 自動判定 vertical : 縦書き horizontal : 横書き |
spec.layout | string | レイアウト reflowable : リフロー prepaginated : 固定レイアウト |
spec.allowSpread | string | 見開き true : 可 false : 不可 |
spec.primaryWritingMode | string | ページ送り horizontal-rl : 右上→左上→右下→左下(縦書きの漫画など) horizontal-lr : 左上→右上→左下→右下(横書きの漫画など) vertical-rl : 右上→右下→左上→左下(4コマ漫画など) vertical-lr : 左上→左下→右上→右下 |
変換
項目 | 型 | 内容 |
making.epubPath | string | 作成するepubファイルのパス パスはLeMEファイルを基準とした相対パスです。 |
making.generateMobi | boolean | mobiファイルの作成要否 kindlegenの設定が必要です。 コマンドラインから実行するときは --kindlegen オプションを使用します。true : 作成する false : 作成しない |
making.userCss.enable | boolean | ユーザーCSSの使用可否 true : 使用する false : 使用しない |
making.userCss.path | string | 未使用 |
making.convertSpaceToEnspace | boolean | 半角スペースを ( )に変換 true : 変換する false : 変換しない |
making.enableHyperLink | boolean | 外部ハイパーリンクの変換 true : 変換する false : 変換しない |
変換(テキスト)
項目 | 型 | 内容 |
making.format.text.eraseConsecutiveBlankLine | boolean | 空行を詰める true : 詰める false : そのまま |
making.format.text.firstLineHeading | boolean | ファイルの最初の行を見出しに変換 true : 変換する false : 変換しない |
making.format.text.heading | boolean | 見出しを変換 true : 変換する false : 変換しない |
making.format.text.paragraphAlign | boolean | 段落の位置を変換(書式:!C, !B, !R) true : 変換する false : 変換しない |
making.format.text.paragraphIndent | boolean | インデントを変換(書式:!Im,n) true : 変換する false : 変換しない |
making.format.text.border | boolean | 罫線を変換(書式:!BD,TBLRH) true : 変換する false : 変換しない |
making.format.text.rubyAngle | boolean | ルビを変換(書式:!BODY《RUBY》) true : 変換する false : 変換しない |
making.format.text.rubyParen | boolean | ルビを変換(書式:!BODY(RUBY)) true : 変換する false : 変換しない |
making.format.text.italic | boolean | イタリックを変換(書式:*文字*) true : 変換する false : 変換しない |
making.format.text.bold | boolean | 太字を変換(書式:**文字**) true : 変換する false : 変換しない |
making.format.text.emMark | boolean | 傍点(黒丸)を変換(書式:+文字+) true : 変換する false : 変換しない |
making.format.text.emMark2 | boolean | 傍点(黒丸)を変換(書式:《《文字》》) true : 変換する false : 変換しない |
making.format.text.emMarkComma | boolean | 傍点(ゴマ)を変換(書式:++文字++) true : 変換する false : 変換しない |
making.format.text.tcy | boolean | 縦中横を変換(書式:^文字^) true : 変換する false : 変換しない |
making.format.text.image | boolean | 画像/リンクを変換 (書式:![メモ](パス), ![テキスト](URL)) true : 変換する false : 変換しない |
making.format.text.pageBreak | boolean | 改ページを変換(書式:!PB) true : 変換する false : 変換しない |
making.format.text.horizontalRule | boolean | 水平線を変換(書式:!HR) true : 変換する false : 変換しない |
making.format.text.advanceMode | boolean | 拡張モードで解釈(Markdownに近い変換) true : 有効 false : 無効(従来通り) |
変換(Markdown)
項目 | 型 | 内容 |
making.format.markdown.pageBreakBeforeH1 | boolean | 見出しLv1の直前で改ページする true : 改ページする false : 改ページしない |
making.format.markdown.convertCrlfToBr | boolean | 改行を<br/>に変換する true : 変換する false : 変換しない |
making.format.markdown.rubyAngle | boolean | ルビを変換(書式:!BODY《RUBY》) true : 変換する false : 変換しない |
making.format.markdown.rubyParen | boolean | ルビを変換(書式:!BODY(RUBY)) true : 変換する false : 変換しない |
making.format.markdown.rubyCurly | boolean | ルビを変換(書式:{BODY|RUBY}) true : 変換する false : 変換しない |
making.format.markdown.emMark | boolean | 傍点(黒丸)を変換(書式:+文字+) true : 変換する false : 変換しない |
making.format.markdown.emMark2 | boolean | 傍点(黒丸)を変換(書式:《《文字》》) true : 変換する false : 変換しない |
making.format.markdown.emMarkComma | boolean | 傍点(ゴマ)を変換(書式:++文字++) true : 変換する false : 変換しない |
making.format.markdown.tcy | boolean | 縦中横を変換(書式:^文字^) true : 変換する false : 変換しない |
変換(PDF)
項目 | 型 | 内容 |
making.pdf.fixedImageSize.enable | boolean | PDF変換時に画像サイズを指定する true : 固定サイズ false : 表紙画像に合わせる(デフォルト) |
making.pdf.fixedImageSize.width | int | PDF変換時の画像サイズ(幅)を指定する enableがtrueのときのみ有効です 1000~10000 |
making.pdf.fixedImageSize.height | int | PDF変換時の画像サイズ(高さ)を指定する enableがtrueのときのみ有効です 1000~10000 |
幅(making.pdf.fixedImageSize.width)と高さ(making.pdf.fixedImageSize.height)が以下の組み合わせと異なる場合、GUIでPDFの画像サイズに関する設定は変更できません。
- 0 : 910×1280
- 1 : 1360×1920
- 2 : 1815×2560
- 3 : 1280×910
- 4 : 1920×1360
- 5 : 2560×1815
幅と高さが規定のサイズを超える場合は「1 : 1360×1920」になります。
コンテンツの情報
項目 | 型 | 内容 |
cover | boolean | 表紙にする。画像ファイルのときのみ使用します。 また、1ファイルのみtrueにできます。 true : 表紙にする false : 通常のページ |
firstPagePosition | int | PDFファイルの最初のページが奇数ページか偶数ページかを指定します。 PDFのときのみ使用します。 0 : 奇数ページ 1 : 偶数ページ |
headingLevel | int | 見出しレベル 0 : 本文 1~6 : 見出しレベル1~6 |
headingText | string | 見出しテキスト 見出しレベルが1より大きいときのみ使用します。 |
imageHandling | int | 画像の取扱い 0 : 埋め込み 1 : 全画面 |
path | string | コンテンツファイルへのパス パスはLeMEファイルを基準とした相対パスです。 コンテンツの種類が空白・目次のときは使用しません。 対象ファイル形式:*.docx, *.txt, *.md, *.jpg, *.png, *.pdf |
tocHeadingLevel | int | 目次にする見出しレベル 目次とPDFのときのみ使用します。 1~6 : 見出し1~6まで |
type | int | コンテンツの種類 0 : 空白 1 : Wordファイル(*.docx) 2 : テキストファイル(*.txt) 3 : 画像ファイル(*.jpg, *.png) 4 : 目次 5 : (未使用) 6 : Pdfファイル(*.pdf) 7 : Markdownファイル(*.md) |
例
テキスト原稿(縦書き)の例
{ "contents": [ { "cover": true, "firstPagePosition": 0, "headingLevel": 0, "headingText": "", "imageHandling": 1, "path": "cover.jpg", "tocHeadingLevel": 1, "type": 3 }, { "cover": false, "firstPagePosition": 0, "headingLevel": 0, "headingText": "", "imageHandling": 0, "path": "目次", "tocHeadingLevel": 4, "type": 4 }, { "cover": false, "firstPagePosition": 0, "headingLevel": 0, "headingText": "", "imageHandling": 0, "path": "body.txt", "tocHeadingLevel": 1, "type": 2 } ], "info.creator1": "Iori", "info.publisher": "Relog", "info.title": "Simple sample book", "making.epubPath": "Simple.epub", "spec.allowSpread": true, "spec.charactorLayoutDirection": "vertical", "spec.layout": "reflowable", "spec.pageProgressionDirection": "right", "spec.primaryWritingMode": "horizontal-rl" }