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

anti scroll

ブラウザと小説の新しい関係を模索する

text-align:justify に対応

縦書き文庫 nehan.js

nehan.jsが、text-align:justifyに対応しました。

縦書き文庫では既に、ビューアーのbodyに対してjustifyが設定されています。

これを設定すると、例えば行末に赤い部分のような微妙なスペースがあっても…

f:id:convertical:20150720170302p:plain

揃えた後はこんな風に、行末が揃います。

f:id:convertical:20150720170313p:plain

あらゆるケースで完璧に揃うわけではありませんが…まあ大抵は揃うようになっています。

ちなみにjustifyを指定すると、少し変換が遅くなります。

自分の環境では20%ほど遅くなりました。

それだけのコストを払った結果、たまに行末がちょろっと揃うだけという状況をどう考えるか…というところなのですけど。

実のところ、自分は今回の実装をするまでずっとjustifyのことを、禁則処理って意味だと勘違いしていたぐらい意識が低いので、割りと「どっちでもいいかなあ」派です。

そもそも横文字が入らない小説だと、なにもしなくても大抵は揃っちゃうんですよね。

ちなみに禁則のことは、英語で(japanese) hyphenationというのだそうです。

余談

均等揃えとか行末揃えについては、日本語組版処理の要件を、ちょろっと斜め読みした程度ですが、ざっくりいうと

  1. まずベタ組を保つことが最優先
  2. その上で、まず削れるところを削り、次に空ける

みたいなことらしいです。

ただ自分の感覚では、カッコや句点読点の前後にあるスペースが狭くなるのは好みじゃなかったので、そのケースでは削らないようにしました。