前回の郵便番号処理に引き続き、縦書き文化のある日本特有の問題をFileMakerではこう処理する、という回です。
事の発端は(そんな大げさな、、、)、「宛名はやっぱり縦書きにしたいんですよね」という一言で実装することになった縦書き印刷でした。
あぁ、ついにきたかと思いつつ、うろ覚えだった縦書きを改めてFileMaker Pro 15で検証しました。
(FM11,12,13,14でも同様に大丈夫だと思いますが、違う部分があったらコメントください)
FileMaker Pro 15の縦書き処理については、ここのページにありますが、実際の運用では半角で英数字を入れろと言っても入れてくれない、全角で入れろと言っても、一部全角、一部半角、というのがよくあります。
上記ヘルプを見ると、全角の場合、半角の場合、の例が出ていますが混在しているのは出てませんでした。
一番のネックは、テキストをそのまま縦書きにするとハイフンや英数字が横書きになるということです。
結局どうなっているときちんと縦書きで表示されるのか!?
ちょっと画像が細かいので、一つづつ見ていきましょう。
まずは、実際の入力です。
半角ハイフン、半角英数字、全角ハイフン、全角英数字を取り混ぜてみました。
このテキスト住所を、計算フィールドで
・全角変換のみ(フィールド名:sys住所_全角)
・全角変換した後全角ハイフンを半角ハイフンへ変換(フィールド名:sys住所_全角_ハイフン半角)
の2種類がどう表示されるか、見ていきます。
まずは、計算フィールドを通した横書きテキストです。
全角処理のみのフィールド「sys住所_全角」は、ハイフンが半角から全角に変換されています。
RomanZenkakuは、英数字を全角に変換します。
Substituteは、指定された文字を一括置換します。
次に、テキストの文字のみを90°回転した場合です。
文字のみの回転をした場合、「sys住所_全角_ハイフン半角」の計算フィールドのものが縦書きとして見た場合、全てが縦書きになっています。
次に、テキストのオブジェクト自体を回転した場合です。
この場合は、テキスト自体は変換せずに、テキストとしてのオブジェクト自体を回転させているだけですので、横書きを寝転がって見ているのと同じ感覚です。
つまり、横書きとして見た場合、どれも問題ないということです。
最後に、テキストの文字を回転させ、さらにテキストオブジェクトを回転してみた場合です。
はがきに印刷する場合、縦書きといえばこの形式がメジャーではないでしょうか?
これも、テキストの文字のみを90°回転させたケースと同じく、全角変換+ハイフン半角変換したものが問題なく表示されています。
このことから、
・英字は全角にする
・ハイフンは半角にする
と宛名印刷のレイアウトも怖くない、ということですね!