ひまつぶし雑記帖

なろうをタテにしてEPUB3電子書籍でヨム

2016/4/18 [20:15:41] (月) 天気

カクヨムをEPUB3の電子書籍に変換してダウンロードするスクリプトを書いたんだけど、カクヨムはR18禁止なのでR18がOKのなろうに退避するケースもあるとかないとか。
カドカワもTL(ティーンズラブ)小説があったような気がするけど、エロではない、ということかな。

てことで、なろうに上がっている小説をEPUB3に変換してダウンロードするスクリプトをでっち上げた。
ttp://ncode.syosetu.com/XXXXXXX
↑小説トップページ(?)目次ページのURLを入力すると電子書籍としてダウンロードできます。

とはいえ、なんだかなろうは商標についてのページや利用規約やガイドラインなんかを見るとどうもややこしいところのようなので(印象)、ダメっぽかったら取り下げます。悪しからずご了承くださいませ。


https://t2aki.doncha.net/tmp/narou2epub.pl
↑例によって直リンクできないフォルダなのでこちらのリンクからどうぞ。


ちなみに。
なろうを電子書籍化するサービスやアプリはすでにあるので、ニーズにあったものを探して利用してみましょう。ウチのより高機能。

「なろうを電子書籍化」WEBサービス
http://narou.nyanpass.jp/

「Narou.rb」rubyアプリ
https://github.com/whiteleaf7/narou/wiki

「AozoraEpub3」javaアプリ
http://www18.atwiki.jp/hmdev/pages/21.html

image

カクヨムを電子書籍に変換してダウンロードするページはこちら
https://t2aki.doncha.net/?id=1457873699

»電子書籍制作代行についてはこちら

カクヨムをタテにしてEPUB3電子書籍でヨム

2016/3/13 [21:54:59] (日) 天気

時事ネタ。
カクヨムの作品URLを入力したらEPUB3の電子書籍としてダウンロードできるようにしてみた。

カクヨムに上がっているWEB小説をEPUB3ファイルにすることで、KindleやiBooks、Kobo、Knoppy(紀伊国屋)、hontoなどの電子書籍リーダーやアプリで読むことができる。

サイトをクロールしてEPUB3にパッケージするスクリプト程度なら手元の部品の継ぎ接ぎでそれっぽいのができるので作った。
(カクヨムのHTMLの構造が変わったらそれまでだし、たぶんカドカワのことなのでそのうちEPUB3変換のクチも別メニューで出てきそうで、メンテするのも不毛なのでこれっきりの一発ネタだろう)


https://t2aki.doncha.net/tmp/kakuyomu2epub.pl
↑カクヨムを電子書籍にしてダウンロード
※直リンクできないフォルダなので、ご利用の場合はこのリンクからよろしく。


アンドロイドのスマホでダウンロードできないことがあるけど、アンドロイドアプリのFirefox(https://play.google.com/store/apps/details?id=org.mozilla.firefox&hl=ja)ならダウンロードできます。それ以外、PCやMac、iphoneなどは問題なくダウンロードできます。

[2020/01/27 22:11:50]
カクヨムのページを見ると書籍化作品が着々と増えていた。WEB掲載が商業デビューのパスとして確立してきてるんだな

 

 

 


カクヨムは横書きのサイトなので半角の英数字などは縦書きにしても寝転がったまま…うーん、こりゃしょうがあるまい。
image
(かなりテキトーなでっちあげ)

[2016/03/15 16:15:01] 追記。
連続する半角数字以外に、半角の「!?」「?!」「!!」に縦中横のスタイルを当てるようにした。
[2016/03/19 10:59:01] 追記。
それっぽい奥付生成。
完結したストーリーの本文を取りこぼすバグ修正。
[2018/05/22 21:44:12]
カクヨムのHTMLが変わっていて目次を取得できなくなっていたのを修正。
また、一部の文字(実体参照)は面倒なんで削除することにした。

なろうを電子書籍に変換してダウンロードするページはこちら
https://t2aki.doncha.net/?id=1460978141

»電子書籍制作代行についてはこちら

紙印刷本から電子書籍から紙印刷本というエコシステム

2016/2/19 [12:12:20] (金) 天気

InDesignからSigil経由のEPUBファイルをInDesignへ。
何を言ってるかわからないと思う。わたしも最初聞いた時は驚いた。

紙で出版されたものが電子書籍として配信されて、今度はその配信されたものを組み直して再び紙印刷本へというお話。
売れっ子グラビアアイドルが、AVに出演した後、温泉街のストリップに流れる、みたいな変遷。逞しい話で、名作(テキスト)は姿形を変えてもしっかり生き残るという良い例だろう(ほんまか)

おそらく元になってるInDesignデータは出せなくて(権利的な話じゃなく、たぶん探すのが面倒、もしくはもうなくなっているので)電子書籍のEPUB3ファイルを元にするしかない。

ということで、そのEPUB3ファイルをバラしてInDesignに流し込みという雇用創出となった。

まだEUPBファイル制作のソフトが出揃ってなかったんだと思う。
ファイルは、一時使われていた縦書きにもできる改造版Sigilで作られているっぽい(EPUBファイルのフォルダ構成やファイルの命名規則がどっかで見たことあるなあと)

でもまあ、青空記法に独自規則のアレンジとかdotBookからのHTMLっぽいデータよりはEPUBファイルの方が扱いやすい。

・組み直しになるので、元のレイアウトにこだわる必要ない。
・小説なので、EPUBファイルから拾い上げるのはルビと圏点、外字程度。

ルビはグループルビのタグがついているし、圏点はsesame(ゴマ)というクラスが指定されている。外字は画像になってるのでそこは「〓」にしておいて校正で対応。

↓InDesignにはタグ付きテキストというのがあって
http://help.adobe.com/ja_JP/indesign/cs/taggedtext/indesign_cs5_taggedtext.pdf
テキストデータにルビや圏点のタグを付けてInDesignに「配置」すればそのままルビも圏点も生かしてくれる。

以下のスクリプトでEPUB3のルビと圏点のタグをInDesignのタグに変換してやれば大丈夫だった。


文字コードでちょっとハマった。
InDesignで「配置」する時、文字コードはShift_JISかUTF16じゃないと文字化けしてしまう。
元にするEPUB3ファイルの文字コードはutf8(BOM無し)。
EPUB3のUTF8をShift_JISにすると文字化けを起こす可能性があるような気がするので、とりあえずutf8のまま上記スクリプトでタグ変換して、エディタで開いて文字コードをUTF16に変換した後、配置した。

Adobeのタグ付きテキストのPDFを見ると、かなり細かく制御できるので、ちゃんと探せばこの手のコンバート系でいろんな強力なツールが出てるはず。
でも、たぶん、そんな継続する案件でもなさそうなので、テキトーな使い捨てスクリプトでやっつけ仕事。
image 
しかし、ほんとニッチな需要もあったもんだ。
ガッテンしていただけたでしょうか。

»電子書籍制作代行についてはこちら

WINDOWSの音声合成Harukaさんは有能だ

2015/10/13 [19:43:35] (火) 天気

音声合成ネタ。
WINDOWSも8から音声合成エンジンがデフォルトで利用可能になったとか(わたしはいまだにwindows7なので伝聞情報)
その日本語音声のHarukaは、ユーザー補助のテキスト読み上げに使われているもので、かなり自然に聞きとれる。macもそうだけど、こういうところは、アメリカさんは、きちんとしっかり対応するんだなあ、と素直に感心してしまった。

マイクロソフトの取り組みとしては

 【Microsoft】日本語音声合成エンジンのご提供について
http://www.microsoft.com/ja-jp/enable/products/7narrator/default.aspx
マイクロソフトでは、障碍 (しょうがい) のある方のパソコン活用に役立てていただくため、日本語音声合成エンジンを無償 (数量限定) でご提供します

という記事が2010年ごろ(?)に上がっていたようだ。

てことで、試したくなったので、検索してみたらば、もう5年以上も前からいろんなブログや掲示板などでノウハウが公開、蓄積されていた…おのれの不勉強に今さらながら呆れてしまう。

無料の音声合成エンジン 「Microsoft Speech Platform 11」
http://mahoro-ba.net/e1541.html
SAPI有効にする方法
http://yarimasu.ankochan.net/d/SAPI%CD%AD%B8%FA%A4%CB%A4%B9%A4%EB%CA%FD%CB%A1
Windows7で音声合成(Text to speech)
http://blog.mogya.com/2012/01/windows7text-to-speech.html
↑こちらのページを参考にWINDOWS7のネットブックにHarukaをインストールした(有用な情報ありがとうございます)

やることは3つ

・Microsoft Speech Platformのインストール
http://www.microsoft.com/download/en/details.aspx?id=27225
x64_SpeechPlatformRuntime.msi(64bit)
x86_SpeechPlatformRuntime.msi(32bit)
↑どっちか。

・TTS音声Harukaのインストール
http://www.microsoft.com/download/en/details.aspx?id=27224
MSSpeech_TTS_ja-JP_Haruka.msi

・レジストリの設定
上記のページを参考に。コマンドプロンプトを管理者モードで立ち上げて

↑をコピペして実行


このユーザー補助に使われる音声、macはコマンドラインでsayコマンドを使えば簡単に利用できたんだけど、WINDOWSがちょっとわからず、結局またperl(Active PerlでWin32)から使うことになってしまった。

読ませたのは『地下生活者の手記』ドストエーフスキイ・米川正夫訳の一節。

「悪人にも、善人にも、卑劣漢にも、正直者にも、英雄にも、虫けらにもなれなかった」

WINDOWSとMacの音声聞き比べ。

「WINDOWS7 SAPI5 Haruka」

「Mac sayコマンド」


WINDOWSもmacも。
OSのデフォルトレベルでここまで聞きとりやすくなってんだなあ。

電子書籍でいうと、これに人名や当て字、ルビを読めれば十分だし、さらに読み上げている箇所のハイライト表示とか、それらの仕込みも実は進んでるんじゃないか。となると、マルチメディアDAISY図書やmedia overlaysによる音声付きEPUB3電子書籍は過渡期の徒花かも。
image【電子書籍と合成音声】
音声付きのEPUB電子書籍 (2014/10/2)
AndroidのTalkbackでkindleを音声読み上げ (2014/11/29)
media overlaysによる音声付き電子書籍の作成 (2015/2/17)
動画で見る音声付き電子書籍の作り方 (2015/2/22)
Windowsで縦書き総ルビの般若心経を読み上げ (2015/2/24)
「眼聴耳視」音声付き電子書籍公開リスト (2015/2/28)
電子書籍につける音声の調教 (2015/3/2)
音声合成聞き比べ (2015/3/13)
WINDOWSの音声合成Harukaさんは有能だ (2015/10/13)
情報のバリアフリー化が進みそうだ (2015/12/7)
MacにOpenJTalkをインストール (2016/6/1)

»電子書籍制作代行についてはこちら

青空文庫のルビや傍点をHTMLタグに変換

2015/9/25 [16:46:57] (金) 天気

小ネタ。
青空文庫形式で書かれたテキストをちょっといじる機会があったんで、例によってperlでごそごそと。

『青空文庫 組版案内』(http://kumihan.aozora.gr.jp)に詳細な資料や、青空記法で書かれたテキストをXHTMLに変換するrubyのスクリプトも提供されている。

青空文庫からXHTMLへはrubyのスクリプトを使わせてもらえばそれで解決なんだけど、用途・前提が青空文庫。当然ながら青空文庫用のcssが埋めこまれる。

電子書籍にするのにそのままでは使えない。
本文で青空記法が使われてるのはルビと傍点、太字程度だったので、その3つをHTMLのタグに変換するスクリプトをでっち上げ。


perlのスクリプト的には、漢字かななどの判定にUnicodeブロックが便利でおすすめ。
無名サブルーチンも便利。


意外なところで青空記法が使われててちょっとびっくりだった。
テキストデータ利用ということで、ボランティアさんが入力するのに青空記法はわかりやすくていいんだろうなあ。


青空EPUBの現バージョン3-1.1.0b45はepubcheckでエラーになる。
原因はnav.xhtmlのlandmark部、「Undefined property:title-page」で、ここを「titlepage」にすれば大丈夫。

image
自転車置き場の新顔…のわりに態度がデカイ。

»電子書籍制作代行についてはこちら

ImageMagickを使わずperlだけで画像サイズを取得

2015/9/18 [23:52:37] (金) 天気

ハイブリッド型EPUB3を生成するスクリプトのフィックスページ部分で画像サイズを取得する必要があった。
「かんたんEPUB3作成ハイブリッド型EPUB3対応版」http://t2aki.doncha.net/easy_epub-hybrid

定番のImageMagickを使えば簡単なんだけど、ImageMagickが簡単じゃなかった。

WINDOWSではImageMagickのインストールが必要で、さらにActivePerlをインストールしたら一緒にインストールされるppmを使ってImageMagickを使うためのperlのモジュールのインストールが必要。ユーザーさんに別途インストールしてもらうにはちょっとハードルが高い。

macはさらに致命的で、macport でインストールしても、パッケージがあったのでそれをインストールしても、ソースからコンパイルしても、肝腎のJPEG、PNGに対応したものを作れなかった(JPEGはどうにかこうにか、まずJPEGのライブラリをインストールしてmakeしなおしたらjpeg対応版ができたけど、PNGがお手上げ)
JPEGにもPNGにも対応したImageMagickを使ってるひとがいるようなので、わたしのスキル、知識不足。だけど、自分でうまく行ってないものをユーザーさんにインストールしてね、というのは無理すぎる。致命的。


「かんたん」を謳う以上、面倒くさいことはひとつでも増えちゃいけない。

てことで、扱うのはJPEGとPNGだけだし、perlだけで画像サイズを取得する方法を探してgoogleさま。

ありがたいことに、そのまま利用できるサブルーチンなどがいくつかアップされていた。
ただ、そのまま=ブラックボックスのまま使わせてもらうと、あとあとメンテの時などに困るのは火を見るより明らか。猿程度の理解は必要だろうと、画像について、その扱いについて調べたので、備忘録。


・PNGは簡単らしい。

16byte4byte4byte
widthheight


16byte目からの4byteに幅、続く4byteに高さのピクセル数が入っているので決め打ち。

幅高さをネットワークバイトオーダーのビッグエンディアン(32bit)で取得するだけでOK。

・JPEGがちょっと面倒。

JPEGというのは複数のセグメントの塊

マーカー2Bytes
セグメントサイズ2Bytes
セグメント本体可変


画像情報を格納しているのはSOFという種類のセグメント。

マーカーというのは16進数の「FF」がセグメントの開始を表していて、これはどういうセグメントですよという内容を意味するのが「FF」に続く1Byteのバイナリ。
SOFセグメントのマーカーで、JPEGのベースラインは「FF」「C0」プログレッシブは「FF」「C2」ということらしい。

ファイルの先頭から見て「FF」が見つかったらそこからセグメントの開始となる(ファイル先頭と最後にはマーカーだけのセグメントがあるので、先頭の2Bytesは読み飛ばす)

必要なのはJPEGの情報が入ったSOFセグメント。

1)
4Bytes読み込む。
2)
unpackでマーカーとセグメントサイズを取得する。

3)
→マーカーの1byteがFFじゃなかったら終了。
→マーカーの1byteがFFでセグメント内容がC0かC2なら続くセグメント本体を読み込む。
→マーカーの1byteがFFでセグメント内容がC0でもC2でもなかったら、セグメントの本体サイズ分読み飛ばして次のマーカーからの4byteを読む

4)
画像サイズはセグメント本体先頭に入っている。

サンプルの精度画像縦サイズ画像横サイズ
1Byte2Byte2Byte


unpackで取得できる。

てことで、easy_epub-hybridに組みこんだサブルーチンが以下。

スクリプトの中からImageMagickを使うシチュエーションのほとんどが画像サイズの取得なので、これは重宝しそうだ。


jpeg画像について、おそらく間違ってるところがあると思うので、きちんとした知識は以下のサイトへどうぞ。

参考にさせていただいたサイト
http://tohoho-web.com/lng/200003/00030402.htm
http://www2c.biglobe.ne.jp/~osakana/vc/pc/jpegsize.html
http://hp.vector.co.jp/authors/VA032610/JPEGFormat/marker/SOF.htm
http://www.setsuki.com/hsp/ext/segment/sof0.htm
情報、丁寧な解説ありがとうございます。


そういえば。Ingress Lv.15になった。なんかAP稼ぎだけで今イチ面白みがなくなってきたなぁ。
image 

»電子書籍制作代行についてはこちら

profile

profile

 
doncha.net
名前:
飯田哲章
mail:
t2aki@mrh.biglobe.ne.jp
twitter:
t2akii

WEBサービス制作/電子書籍制作

検索
<<2020/8>>
      1
2345678
9101112131415
16171819202122
23242526272829
3031

リンク

WINDOWS版サウンドノベル
おかえりください PC WINDOWS版サウンドノベル
『おかえりください』体験版

iPhone電子書籍アプリ
小説同人誌Select iPhone電子書籍アプリ
『小説同人誌Select』

[19 Page]« »
1 2 3 4 5 6 7 8 9 10

TOTAL:2891

2020 (13)
1 (2)
2 (6)
4 (1)
6 (1)
7 (2)
8 (1)
2019 (17)
1 (3)
2 (4)
3 (2)
4 (2)
5 (1)
6 (1)
8 (1)
10 (1)
12 (2)
2018 (21)
1 (3)
2 (2)
3 (2)
4 (1)
5 (1)
6 (6)
8 (1)
9 (1)
10 (2)
12 (2)
2017 (32)
1 (2)
2 (1)
4 (2)
5 (1)
6 (6)
7 (3)
8 (5)
9 (3)
10 (2)
11 (2)
12 (5)
2016 (41)
1 (5)
2 (5)
3 (2)
4 (3)
5 (4)
6 (6)
7 (2)
8 (2)
9 (3)
10 (1)
11 (4)
12 (4)
2015 (99)
1 (11)
2 (12)
3 (9)
4 (6)
5 (8)
6 (8)
7 (3)
8 (5)
9 (16)
10 (6)
11 (1)
12 (14)
2014 (112)
1 (16)
2 (5)
3 (6)
4 (12)
5 (16)
6 (19)
7 (9)
8 (6)
9 (4)
10 (8)
11 (6)
12 (5)
2013 (145)
1 (24)
2 (15)
3 (18)
4 (23)
5 (14)
6 (11)
7 (7)
8 (11)
9 (5)
10 (4)
11 (6)
12 (7)
2012 (103)
1 (1)
2 (1)
3 (4)
4 (3)
5 (7)
6 (26)
7 (17)
8 (5)
9 (8)
10 (10)
11 (11)
12 (10)
2011 (54)
1 (4)
3 (7)
4 (4)
5 (14)
6 (6)
7 (3)
8 (3)
9 (1)
10 (4)
11 (2)
12 (6)
2010 (70)
1 (12)
2 (7)
3 (6)
4 (6)
5 (3)
6 (10)
7 (6)
8 (4)
9 (3)
10 (4)
11 (3)
12 (6)
2009 (144)
1 (15)
2 (12)
3 (12)
4 (6)
5 (15)
6 (6)
7 (10)
8 (9)
9 (17)
10 (12)
11 (14)
12 (16)
2008 (148)
1 (10)
2 (6)
3 (10)
4 (11)
5 (13)
6 (10)
7 (13)
8 (19)
9 (18)
10 (12)
11 (13)
12 (13)
2007 (106)
1 (7)
2 (5)
3 (3)
4 (7)
5 (5)
6 (9)
7 (8)
8 (13)
9 (18)
10 (11)
11 (8)
12 (12)
2006 (158)
1 (28)
2 (28)
3 (25)
4 (7)
5 (9)
6 (7)
7 (12)
8 (13)
9 (10)
10 (7)
11 (6)
12 (6)
2005 (350)
1 (31)
2 (26)
3 (26)
4 (27)
5 (29)
6 (30)
7 (32)
8 (30)
9 (30)
10 (32)
11 (29)
12 (28)
2004 (292)
1 (24)
2 (24)
3 (29)
4 (27)
5 (28)
6 (25)
7 (26)
8 (24)
9 (12)
10 (19)
11 (26)
12 (28)
2003 (318)
1 (22)
2 (25)
3 (21)
4 (28)
5 (28)
6 (28)
7 (28)
8 (29)
9 (26)
10 (29)
11 (28)
12 (26)
2002 (317)
1 (29)
2 (26)
3 (26)
4 (25)
5 (28)
6 (30)
7 (27)
8 (21)
9 (25)
10 (27)
11 (28)
12 (25)
2001 (277)
1 (17)
2 (21)
3 (23)
4 (20)
5 (31)
6 (18)
7 (26)
8 (25)
9 (29)
10 (19)
11 (24)
12 (24)
2000 (53)
6 (9)
7 (4)
8 (2)
9 (3)
10 (1)
11 (15)
12 (19)
1999 (3)
7 (1)
10 (2)
1998 (18)
9 (9)
10 (7)
11 (2)