2013年12月16日

青空文庫テキストをInDesignタグ変換でユニコードで処理する

 青空文庫テキストの置換は、最初は通常の検索置換と複数一括置換と組み合わせで行っていたが、正規表現での改行は「\n」で可能だったので、ワークフローを作り直した。改行の削除は見出し文字の前後と、段落の冒頭の空白スペースの削除で使うので、それらは「\n」の正規表現検索に変更した。見出しは改行と見出し文字列を検索して、同じ文字列を改行のみを削除して置換する。それで全体の置換ステップは8回になった。

  置換テキストはすべてJeditの[読込み]からタブ区切りファイルを読み込んで、ファイルの順番に適用するだけでいい。ただし最初に青空文庫内の不要なタイトルや注記の説明、底本の奥付を削除する。底本の奥付はそのままでもかまわない。別にレイアウトする場合は削除しておく。

 処理が少し厄介だったのは、ユニコードの外字であった。OpenTypeフォントがAdobe Japan 1-5対応であれば、JIS X 2013の第3水準第4水準の文字は含まれているが、ユニコード指定されている場合はJIS X 2013には含まれてない字形ということになる。その場合はそのままOpenTypeフォントで指定すると、正しく表示されない可能性がある。たいていの字形はAdobe Japan 1-5の20,317字形があれば間に合うが、それでも中国語の繁体字や簡体字のみに含まれている字形が指定されることがある。

 青空文庫の吉川英治版「三国志」をこの方法でInDesignにレイアウトしたが、ProNのヒラギノ明朝で表示できなかった字形は一つしかなかった。その字形は簡体字のみで指定できたので、簡体字を指定してレイアウトした。たいていの字形は簡体字ではなく繁体字内に置かれるている。

 そこでユニコードはタグで繁体字を指定することにした。

<cFont:Adobe Ming Std>

というタグでユニコード漢字を指定して、InDesignに配置するのである。そうすると、ユニコードはで指定された文字はとりあえず「Adobe Ming Std」で貼り込まれる。この文字をプリフライトでリストして、字形を本文フォントに置き換えていく。

AID4-017.gif

   ↓

AID4-018.gif
*ユニコードを含んだ文字にルビがある場合は、ユニコードも含めてうまくルビを設定できないことが多い。その場合は手動でルビを編集する。

 置き換えられなければ、繁体字のまま使う。「Adobe Ming Std」にない場合は、簡体字の「Adobe Song Std」を指定する。この方法では、デフォルトでインストールされている「Adobe Ming Std」と「Adobe Song Std」はL体しかないので、本文フォントのウエイトが太いときは、ウエイトにあった繁体字や簡体字のフォントが必要になる。レギュラーサイズの明朝系のフォントであれば、ほとんど問題ないだろう。

 ただそうはいっても、三国志全巻で「Adobe Ming Std」簡体字への置き換えが必要だったのは、1文字だけだった。テキストエディタでユニコード(というより正確にはJIS X 2013)内の漢字を使い、InDesignタグで指定する場合は、漢字はそのまま漢字として入力すればいい。異なっているのは、タグ付きテキストの冒頭の宣言文に

<UNICODE-MAC>

と入力してエンコーディングをUTF-16とし改行コードをUNIX(LF)にしておく。そうすればタグ付きテキスト内でユニコードで指定する必要はない。

 そうすると、あとは見出しとか傍点などを青空文庫形式で記述しておけばそのままInDesignに貼り込むことが可能になる。OpenTypeフォントにない字形は注記を付けておいてInDesign上で処理すればいい。

 テキストのオリジナルをタグで作成しておけば、複数の出力に青空文庫形式で対応できる。ついでにいっておくと、青空文庫形式で作成したテキストをこの方法で変換してInDesignに貼り込めば、テキストの校正も可能だ。字下げ終わりの注記が抜けている場合などはInDesignでレイアウトを確認すれば簡単に調べることができる。


◆青空文庫テキストをInDesignタグに変換して配置する方法
http://www.incunabula.co.jp/book/id_tag/


 
posted by jink0222 at 17:05 | Comment(0) | TrackBack(0) | InDesignタグで青空文庫 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバック
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。