メモ@inudaisho

君見ずや出版 / 興味次第の調べ物置き場

横書きのスキャン画像PDFをリフローさせるアプリ

PDF のリフロー

 PDFとリフローというと電子書籍をちょっと知った人から見ると水と油のような関係にみえる。固定レイアウトとリフローの二大分類が電子書籍にあるからだ。固定はページのレイアウトそのままであり、リフローはテキスト情報だけ持っているもので、ユーザーの方で自由に画面レイアウトを組める。印刷を前提として開発された固定レイアウトの電子書籍代表がPDFとも言える。しかし、テキストとしてデータをもっているのであれば、リフローさせるのはそんなに難しいことではなく、現にPDFの元締 AdobeAcrobat Reader DC だと 「表示」→「ズーム」→「折り返し」でテキスト情報だけのリフローをさせることができる。

 しかし世の中にあるPDFがすべてテキスト化されたものばかりではない。コピーよろしくスキャンして画像として取りこんでPDFにまとめたものがある。これをリフローさせるのはなかなか難しい。というよりできると思っていなかったのだが、画像解析の発達のおかげか、今回紹介するような応用がでてきた。

axet android-book-reader

 これがそのアプリのサイト。FBReader をベースに改造したもので、FBReader よりもシンプルで使いやすい。

gitlab.com

 Google Play のページはこちら。

play.google.com

 これをどう呼んだらいいのかわからない。axet の Book Reader ということで固有名詞がこの開発チームのaxetしかない。アプリ名としてひどいので仮に axet ブックリーダー と呼ぶことにする。

リフローの様子

 まずは画像でどんな風になるか見てもらう。Yota3+ の電子ペーパー面にこういう論文スキャンPDFを表示させてみる。白黒反転(ダークテーマ)なのは自分の趣味だ。ちなみにダークテーマ自体は FBReader の機能らしい。

f:id:inudaisho:20190116210305j:plain
ノーマル

 これが普通の状態で、普通はリーダーの方で自動切り抜きなどして余白を消して見やすくするのが定石だが、このアプリはそれがない。そのかわりに上にあるアンテナのようにクネクネした矢印を押すとリフローに切り換わる。

f:id:inudaisho:20190116210719j:plain
リフローに切り換えたところ

 みてのとおりテキストとしてリフローされるのではなく、画像の文字がリフローされるのである!

 しかも区切りがあやしいのはともかく、それなりにちゃんと読める。挿図があっても簡単なものならそんなにおかしいことにならない。

 残念ながらこれは解析に時間がかかるのでページを往復する都度、何もできない時間が若干発生するが、それはしかたない。意外とちゃんと読めてるというのが重要だ。

2段組のリフロー

 さてこれが2段組になってる組み方でどうなるかをみてみる。これ。

f:id:inudaisho:20190116212123j:plain
二段組

 三重の安濃津の発掘調査報告書だが横書きで二段に組んである。これでリフローさせてみるとこうなる。

f:id:inudaisho:20190116212248j:plain
二段組のリフロー

 タイトルが泣き分かれてしまっているが、だいたいよくできている。すごい。

縦書きは無理

 しかしこのアプリ、縦書きにはまったく対応していない。SJISのファイルも読めない。(つまり青空文庫の一部も読めない) ということで、スキャンした縦書き論文を読ませても意外とできたりするものの、右から左という概念がないのでまず無理だ。そもそもベースにしているFBReaderが対応していない。

内部で解析しなおしたPDFを生成している

 それからk2pdfopt の特徴だとおもうのだが、内部的に新しくPDFを生成しているようだ。だから最初時間がかかるのか。まぁそのへんはまだよくわからない。

リフローするアプリ

 他にもリフローに対応しているアプリはあり、たとえば軽量だが汚い画像化で有名な Foxit でこの画像PDFをリフローさせると実はリフローできるのだが、残念なことに誤字だらけのOCRっぽいものがでてくる。Xodo でも同じ。ところがこの axet ブックリーダーではそこをあえてOCRせず、もとの画像の文字らしきものをそのまま持ってくるということで解決していてなかなかすごい。

 内部的にはどうも k2pdfopt のソースを流用しているようなので、k2pdfopt をDebianに入れて動かしてみたが、これは小さい画面向けにリフローさせるもので、やはりテキスト化してしまうのであまりよくない。画像解析はまだまだ発展途上なのでこの先さらに洗練され、こういうやりかたが普通に使えるようになるかもしれない。

理科系の作文技術(リフロー版) (中公新書)

理科系の作文技術(リフロー版) (中公新書)