読者です 読者をやめる 読者になる 読者になる

フニゲの開発日記

Electronとか...

CSNFの詳細について

 ルートフォルダの下にstory.json、各ページのデータはページ毎にページ番号のついたディレクトリに記録されている。

1
├── 1
│   ├── ly_d0
│   ├── ly_f0_b
│   ├── ly_f0_s
│   ├── ly_t0_b
│   ├── ly_t0_bt
│   ├── ly_t0_t
│   ├── ly_t1_b
│   ├── ly_t1_bt
│   ├── ly_t1_t
│   └── thumb
└── story.json

 

{"body":{
  "finishing_id":6, // 不明
  "sheet_id":3, // 用紙テンプレートのID。B4=3, A6=2など。
  "sheet_size":[257,364], // 用紙サイズ
  "serial_id":2, // 意味はわからんが常にpage_count+1
  "page_count":1, // ページ数
  "version":1, // 常に1
  "bind_right":true, // 右閉じ
  "finishing_size":[210,297], // 外枠サイズ(mm)
  "baseframe_id":6, // 不明。たぶんfunishing_idと等しい
  "author":"作者名",
  "story_id":1, // このIDがルートフォルダの名前
  "title":"タイトル名",
  "pageinfo_count":1, // pageinfoの要素数
  "startpage_right":false, // falseの時は左ページから始まる
  "edit_date":"20160928060003", // タイムスタンプ(年月日時分秒)
  "baseframe_size":[180,268], // 内枠サイズ(mm)
  "dpi":72, // ビットマップの解像度は sheet_size(mm) * 2.833
  "last_modify":1, // たぶん最後に編集したページ
  "pageinfo":[[0,1,1,0,0]], // 見開き毎の各ベージの配置(順序が変わることがあるため)
  "cover_col":2, // 表紙の色
  "layer_color":[ // 各レイヤーのRGB
    [-7950848,-16736256,-16777216],
    [-16738348,-16777056,-16777216],
    [-4259752,-6291456,-16777216],
    [-1918976,-6250496,-16777216]]
  }}

 レイヤーはdraw、frame、text、noteの4種類があって、それぞれ3色使えるので最大12枚。

  • draw(画像)

 ly_d[0-2] // 下描きのbitmap。
 width(2byte)+height(2byte)+width*height個のグレイスケールデータをzipで圧縮したもの。

  • frame(枠線)

 ly_f[0-2]_b // 枠線のbitmap。
 ly_f[0-2]_s // json

{"body":{
  "count":3,
  "shape":[
    // 2=rect, 4=lineWidth, x0, y0, x1, y1, x2, y2, x3, y3
    [2,4,147,584,391,584,391,746,147,746],

    // 1=line, 4=lineWidth, x0, y0, x1, y1
    [1,4,-1,-6,722,980],

    // 4=poly, 13=lineWidth, 5=numVertices, x0, y0, ...
    [4,13,5,291,837,184,796,235,721,314,726,331,807]
  ]}}

 

  • text(テキスト)

 ly_t[0-2]_bt // テキストのbitmap
 ly_t[0-2]_b // これもbitmap。
 テキストレイヤーにはフキダシの画像も描けるようになっているので、bitmapが2枚あるのだと思う。

 ly_t[0-2]_t // json

{"body":{
  "count":1,
  "shape":[
    // 5=text, x0, y0, 11=fontSize, 行揃え, boldとか, 縦書き, 文字列
    [5,121,474,11,0,0,true,"テスト\nテスト"]]}}

 

  • note(ノート)

 ly_n[0-2] // ノートのbitmap。

  • あと各ページにthumbというサムネール用のPNG画像がある。サイズは181x256ぐらい。


 まあいつか誰かがこの道を通るだろう。

広告を非表示にする