Skip to main content

親文字揃へ

親文字揃へ肩付ルビとがきちんと出來てゐるPDF文書といふものを、僕は、梅雨空文庫にあるものくらゐしか知らない。これを自分でもLaTeXを使つて自動化出來ないものかといふのが、ここ何年かの懸案事項の一つだつた。

肩付ルビは、單語辭書を持たせる必要があるものの、LaTeXマクロが用意されてをり、比較的簡單に實現可能である。また、その副作用で行頭の親文字揃へは自動的に出來てしまふが、問題は行末である。LaTeXをコンパイルしただけだと、親文字(漢字)が浮いたり、ルビが下にはみ出たり見苦しい。これを避けるには、行末に來るルビと親文字に對し獨特の配置ルールを宛がふ必要がある。しかし、縦書きTeXで行末の檢知をうまくやるのは、ネットを漁つてみても、現状では難しいらしいここに書いてある通りを自分でも實驗してみたが、やはり期待通りには動かない。

記事を見る限りでは、和文TeX特有の問題らしいので、TeX或はLaTeXのソースを讀んで手を入れるのが一番正統な解決方法だとは思ふが、そこまでの根気はないので、筋がよくないとは知りつつ強硬策に出ることにした。一旦TeXにかけた後,その出力から行單位に情報を取り出し、揃つてゐない行末を強制するといふものである。TeXが吐くdviをいぢつても好いのだが、CL-PDFといふ使ひ慣れた道具があるので、dvipdfmxで出來上がつたPDFをパースして強制的に行末を揃へてやらうと思ひたつた。

親文字揃へが崩れるパターンには二つあつて、一つはルビが行末からはみ出るタイプ、もう一つは親文字(漢字)が行末から浮いてしまふタイプである。ルビに關しては、行内位置を計算しながら一つ一つ文字を追ひかけて行き、行末をはみ出たら、その文字を上に引き上げてやる、引き上げたとき、さらに上の文字と重なるといけないので、再歸的に見つつ重なりのなくなつたところで終了。漢字についてはルビよりは簡單で、浮いてゐる文字があれば少し下げて行末に落ち着かせてやる。このアルゴリズムで拾へないケースもあるが、それは實際に遭遇したときに考へることにする。

プログラムの檢證題材は明治元譯新約聖書である。WikisourceにあるテキストからLaTeXを組み立て、PDFにしたものを親文字揃へしてみた。dirty hack とも呼べないボロボロの program で、その都度 parameter tuning が必要な、自動化には程遠いものだが、とりあへず使徒行傳に適用してみたところ、まだまだ問題はあるものの、以前よりはずつと好い感じに仕上がつた。

Comments

Popular posts from this blog

明治元譯新約聖書のPDF化

WIKISOURCEにあるソーステキスト を元に四福音書(明治元譯)をPDF化してみました。讀合はせはしてをりませんが、最初の叩き臺として投稿します。 ソース中※印のコメントは除いた  麪と麫が混在してゐるので「麪」に統一した 「湱」のglyphがAdobe-Japan1-6コレクション中に無いため、「氵」と「砉」を合成して表示するやうにした 字體はできるかぎり正字體に改めた。ただし「又」の筆押さへなどAdobe-Japan1-6コレクション中にglyphの無いものは對應できてゐない ルビは原則肩付ルビとしたが、元ソースが熟語一纏めにルビを振つてゐるものについては一部對應できてゐない 親文字揃へができてをりません 節番號とそれに續く本文との間に改行が入らないやう禁則處理をしたつもりですが、所所うまく行つてをりません 「あっき」「じゆう」「ぶどう」など明かな假名遣ひの誤りを正した 馬太傳福音書 馬可傳福音書 路加傳福音書 約翰傳福音書 2017-12-19: BitBucketに、 LaTeXソース生成ツールを置きました 。 2018-03-19: 以下を更新した。   5. ルビは出来うる限り肩付ルビとした   6. 不相變親文字揃へができてゐません   7. 節番號とそれに續く本文との間に改行が入らないやう禁則處理を多少ましにした   8. 假名遣ひの誤りは氣付いた箇所についてWikisourceの方を編集したがその際基本原本のままとした。(例へば「自由」の假名が「じゆう」となつてゐるのは明治二九年新約全書に倣つた)又、明治二九年新約全書では「首石」は「をやいし」となつてゐる箇所があるが、元のWikisourceを尊重して「おやいし」の儘に置いた。   9. PDFをひととほり眺め氣付いた箇所について明治二九年新約全書に從ひWikisourceを修正した   10. 章建てを頁の上隅に記載するやうにした   11.  LaTeXソース生成ツールを更新した 2018-03-20: 使徒行傳 を加へた。 羅馬書 を加へた。 2018-03-28:  哥林多前書 と 哥林多後書 と 加拉太書 と 以弗所書 と 腓立比書 と 哥羅西書 を加へた。 2018-04-04:  帖撒羅尼迦前書 、 帖

新約全書

新約全書明治二九年大日本聖書舘を底本とした、電子復刻明治元譯聖書を以下に置く。 新約全書 明治二九年大日本聖書舘 底本   PDF(IPAmj 明朝 Ver.005.01)   PDF(小塚明朝 Pr6N) 新約全書英和對照 KJV & 明治二九年大日本聖書舘   PDF 栞あり(PDF IPAmj 明朝 Ver.005.01)   PDF 栞あり(PDF 小塚明朝 Pr6N) 新約全書 分冊   PDF(IPAmj 明朝 Ver.005.01) 馬太傳福音書 馬可傳福音書 路加傳福音書 約翰傳福音書 使徒行傳 達羅馬人書 達哥林多人前書 達哥林多人後書 達加拉太人書 達以弗所人書 達腓立比人書 達哥羅西人書 達帖撒羅尼迦人前書 達帖撒羅尼迦人後書 達提摩太前書 達提摩太後書 達提多書 達腓利門書 達希伯來人書 雅各書 彼得前書 彼得後書 約翰第一書 約翰第二書 約翰第三書 猶太書 約翰默示録   PDF(小塚明朝 Pr6N) 馬太傳福音書 馬可傳福音書 路加傳福音書 約翰傳福音書 使徒行傳 達羅馬人書 達哥林多人前書 達哥林多人後書 達加拉太人書 達以弗所人書 達腓立比人書 達哥羅西人書 達帖撒羅尼迦人前書 達帖撒羅尼迦人後書 達提摩太前書 達提摩太後書 達提多書 達腓利門書 達希伯來人書 雅各書 彼得前書 彼得後書 約翰第一書 約翰第二書 約翰第三書 猶太書 約翰默示録 英和對照新約全書 分冊   PDF 栞あり(IPAmj 明朝 Ver.005.01) 馬太傳福音書 馬可傳福音書 路加傳福音書 約翰傳福音書 使徒行傳 達羅馬人書 達哥林多人前書 達哥林多人後書 達加拉太人書 達以弗所人書 達腓立比人書 達哥羅西人書 達帖撒羅尼迦人前書 達帖撒羅尼迦人後書 達提摩太前書 達提摩太後書 達提多書 達腓利門書 達希伯來人書 雅各書 彼得前書 彼得後書 約翰第一書 約翰第二書 約翰第三書 猶太書 約翰默示録   PDF 栞あり(PDF 小塚明朝 Pr6N) 馬太傳福音書 馬可傳福音書 路加傳福音書 約翰傳福音書

變體假名、踊り字、傍線など

明治譯 にできるかぎり沿つた、變體假名、踊り字、傍線などを附加した 路加傳福音書 を投稿します。 KJV との 對譯 も用意しました。横書きで傍線が上についてゐるのは愛嬌といふことで。(因みに大正元年十二月二十日大英國北英國聖書會社發行の英和對照新約全書では傍線が上にあることをこの後知りました) 筆押へ IPAmj明朝フォント が筆押への有る「又」などのglyphを用意してくれてをり、これに對應した TeXパッケージ もあることを知り、Adobe-Japan-1-6に無い幾つかの字體への對應をした。あまり奇麗なフォントではないが無いよりはと我慢する。 變體假名 また、此のフォントでは、一部、 變體假名 も出せることがわかり、これを使つてみようと思ひたつ。但し、明治譯聖書に於ける變體假名の利用には、特にルールらしきものは見當らなかつた。流石に一つ一つ追ふだけの根気はないので、自分なりのルールをつくり、適當に交ぜてある。( utf-to-jis.el  で處理。)雰圍氣だけは出てゐるやうに思ふ。 IPAmj明朝フォント に用意されてゐないglyphについては、今のところ出すことができない。「こと」や「ヨハネ」が表示できないのが殘念。 濁點變體假名 此のフォント では、濁點變體假名glyphが用意されてゐないので、 pxjaschar.sty を拾ってきて、縱書き横書き用に分け、其其 pxjaschart.sty 、 pxjaschary.sty  としてtuningした。 TeX macro TeX處理すると 「ハ」(MJMZM{090171}) の配置位置がずれる。氣持ち惡いので pxjaschar[ty].sty  中に \hakern  と \bakern  を定義して調整した。 踊り字 踊り字に對應した。明治譯では假名の繰り返しに 二の字點UTF{303B} が使はれてゐるが、これの濁點glyphがないので、濁點變體假名と同じやうに \* で補った。 また、 ajKunoji が横書きではエラーを吐くので、今のところ横書きでは利用してゐない。 片假名傍線 明治譯に倣ひ、片假名傍線を施した。片假名は、人名、地名、其の他と分けて一本線、二本線、線無しとした。( utf-to-jis.el  に定義。)