# 日本語トランスレータ
リファレンス・マニュアル

前へ | 次へ | 目次 | 索引

### 2.2.1.3 倍角文字

フォントがタイプ・ファミリで指定されているときには，文字サイズ変更命令GSM (Graphic Size Modification)を用いて，いわゆる横倍角，縦倍角，4倍角文字 (縦横倍角)が出力できます。

GSMでは文字の高さと幅の2つのパラメータを指定できますが，どちらのパラメー タも，現在有効なフォントのタイプ・サイズを基準にして，拡大率を百分率で指定します。指定された大きさに該当するフォントが存在しない場合，その大きさよりも小さくて最も近いフォントを選びます。このとき，既存のフォントの高さや幅を 2倍に拡大すると目的のサイズに近いフォントが得られる場合，GSMは倍角文字を 生成します。以下に例を示します。

1. 縦倍角の例

        CSI 200  ;    100  SP    B

        9/11     3/11      2/0   4/2

   DEC BUILTIN1ファミリで，10ポイント・フォントが現在有効なとき，上記の GSM 命令に続くテキストは10ポイント・フォントが縦に2倍に拡大されたものになります。DEC BUILTIN1 ファミリの10ポイント・フォントでは，10, 10.3, 12, 15cpi (文字/インチ)といった複数のフォントが存在しますが，10cpiが，10ポイントの場合の文字幅100%を意味します。

2. 横倍角の例1

       CSI 100  ; 200 SP  B

   同じくDEC BUILTIN1ファミリで，10ポイント・フォントが現在有効なとき，上記のGSM命令に続くテキストは10ポイント10cpiフォントが横に2倍に拡大されたものになります。すなわち，5cpiになります。

3. 横倍角の例2

       CSI 100  ; 140 SP  B

   同じくDEC BUILTIN1ファミリで，10ポイント・フォントが現在有効なとき，上記のGSM命令に続くテキストは10ポイント15cpiフォントが横に2倍に拡大されたものになります。10cpiを100%の文字間隔とすると，ここで指定した文字幅パラメータ140%という値は約7.1cpiになり，このようなフォントは存在しません。そこで7.1cpiより文字幅が小さくて最も近いフォントを探しますが，15cpiフォントの横倍角が7.5cpiですので，このフォントが選ばれます。

4. ４倍角(縦横倍角)の例

       CSI 200  ; 200 SP  B

   縦も横も2倍に拡大されたものを4倍角といいます。DEC BUILTIN1ファミリで， 10ポイント・フォントが現在有効なとき，上記のGSM命令に続くテキストは10ポイント10cpiフォントが縦横に2倍に拡大されたものになります。

注意 倍角はフォント・ローディング命令(DECLFF)によって，ダウンロードされたフォントに対しては無効です。 倍角をより確実に制御するために，タイプ・サイズ指定命令(GSS)によってフォントを選択してからGSMを用いることをお勧めします。

### 2.2.1.4 文字ピッチ

フォントがタイプ・ファミリで指定されていて，文字ピッチが現在有効なフォントの本来の文字ピッチから決まるのではない時，すなわち文字ピッチが明示的に指定されている時，DEC漢字(2バイト文字セット)は常に1バイト文字セットの半分の文字ピッチで，すなわち倍の文字間隔で出力されます。これがいわゆる全角/半角の文字関係です。

さらに，既存の漢字プリンタとの互換性のために，文字ピッチ指定命令，DECSHORP (Set Horizontal Pitch)に6.38cpiが追加されました。

    CSI     Ps      w

    9/11            7/7

表 2-1 DECSHORPのパラメータ
Ps | cpi
--- | ---
0 | 現在有効なフォントの文字ピッチ
1 | 10文字/インチ
2 | 12文字/インチ
3 | 13.2文字/インチ
4 | 16.5文字/インチ
5 | 5文字/インチ
6 | 6文字/インチ
7 | 6.6文字/インチ
8 | 8.25文字/インチ
9 | 15文字/インチ
10 | 12.77文字/インチ
11 | 17.1文字/インチ，または6.38文字/インチ
12 | 8.55文字/インチ
13 | 18.0文字/インチ
14 | 9.0文字/インチ
15 | 10.3文字/インチ
16 | 6.38文字/インチ

Psが11のとき，ANSIデータ・タイプでは17.1cpiに，KANJI，KANJI78， LA_KANJIデータ・タイプでは6.38cpiになります。これは漢字LN03等との互換性を維持するための処理です。将来，Psの11はどのデータ・タイプでもすべて 17.1cpiとして解釈されるようになる予定です。6.38cpiを使う場合は， Psを16にしてください。

注意 ANSI，KANJI，KANJI78データ・タイプでは，フォントがタイプ・ファミリで指定されている状態(初期状態)で文字ピッチの指定をしたときには，ピッチに合わせて最適の大きさのフォントをそのタイプ・ファミリの中から選択しますが，このとき，横倍角のフォントは選択の対象にはなりません。 文字ピッチ指定命令(DECSHORP)でパラメータ Ps を 0 にするか，またはパラメータを省略した場合，全角文字(2バイト文字)の文字ピッチがテキスト・トランスレータと漢字LN03とで異なります。テキスト・トランスレータはフォントの文字幅をそのまま使用しますが，漢字LN03は全角文字に対して1バイト文字の倍の文字幅を割り当てます。互換性を維持するためには，文字ピッチ指定命令で0以外のパラメータを指定してください。

### 2.2.1.5 文字属性

文字属性指定命令，SGR(Select Graphic Rendition)に反転，網掛けが追加されました。

    CSI     Ps    ;     ...;Ps    m

    9/11          3/11            6/13

表 2-2 SGRのパラメータ
Ps | 文字属性
--- | ---
0 | すべての属性解除
1 | 太字(ボールド)
2 | 細字
3 | 斜体(イタリック)
4 | 下線(アンダーライン)
?4 | スーパースクリプト(上付き)
?5 | サブスクリプト(下付き)
?6 | 上線(オーバーライン)
7 | 白黒反転
?7 | 網掛け
9 | 消去線(ストライクスルー)
10から19 | フォント選択
21 | 二重下線
22 | 太字/細字解除
23 | 斜体解除
24 | 下線/二重下線解除
?24 | スーパースクリプト/サブスクリプト解除
?26 | 上線解除
27 | 白黒反転解除
29 | 消去線解除

注意 太字，斜字体，白黒反転を指定した場合，トランスレータは該当する属性を有するフォントがあればそのフォントを選択し，なければ独自のアルゴリズムに従ってその属性を表現します。 細字は，該当する属性を持つフォントがある場合にのみ有効です。 複数の属性を同時に有効にして表示することができますが(たとえば，太字の斜体)，下線と二重下線，太字と細字およびスーパースクリプトとサブスクリプトは同時に表示することはできません。 1回のSGRの中で，複数の属性を一度に指定することができますが，網掛けについては，他の属性と同時に指定することはできません。 網掛け属性の解除には，全属性の解除(パラメータ＝0)を用います。 斜字体と白黒反転，または斜字体と網掛けを同時に使用するときに，文字間隔を詰めると文字の一部が欠けることがあります。文字間隔を十分広くとってください。 フォントのタイプ・サイズが異なるとき，およびスーパースクリプト/サブスクリプトを指定したときには，下線，二重下線，消去線，反転，網掛けは，一般にずれます (つながりません)。タイプ・サイズが同じでも，タイプ・ファミリが異なると同様にずれることがあります。 白黒反転を下線または二重下線と同時に指定した場合，一般に下線，二重下線は見えなくなります。

### 2.2.1.6 縦書き

漢字縦書き指定命令，DECKVPM(Kanji Vertical Printing Mode)を用いて，DEC 漢字(2バイト文字)を縦書きにすることができます。この命令を生成した次のページから縦書きになります。縦書きの解除は，縦書き解除命令によって行います。縦書きの解除も，命令を生成した次のページから有効になります。

この命令では，印字方向と印字開始位置の両方が変更されるので，ページのオリエンテーションは変化しません。 図 2-1 を参照してください。

CSI 9/11 | ? 3/15 | 7 3/7 | 5 3/5 | h 6/8 | 縦書き指定
CSI 9/11 | ? 3/15 | 7 3/7 | 5 3/5 | 1 6/12 | 縦書き解除

図 2-1 DECKVPMによる縦書き(1)

注意 縦書き指定によって，ページの上下マージンと左右マージンは入れ替わります。縦書きが解除された時は元に戻ります。 文字属性指定(SGR)によって斜字体が指定されているとき，縦書きされた2バイト文字 は，右下がりの字体になります。この機能は将来変更される可能性があります。 文字サイズ変更(GSM)によるいわゆる横倍角は，縦書きのときには縦倍角になります。 同様に縦倍角は横倍角になります。この機能は将来変更される可能性があります。

### 2.2.1.7 フォーム・オーバーレイ

フォーム・オーバーレイとは，あらかじめ見出しや罫線などのフォーム・データをトランスレータに登録し，後で入力したデータを重ねて印刷する機能です。フォームの登録および設定は，以下のシーケンスを使用します。

- フォーム・データ登録(DECLKF)

- フォーム・オーバーレイ設定(DECKSPP)

フォーム・データには，見出しなどに使用する文字の他，直線(DECVEC)や印刷位置設定(VPAなど)のシーケンスを含めることができます。ただし，フォームに重ねて印刷するデータと区別するために，フォーム・データはシクセル形式で登録します。フォーム・データは，ジョブごとに最高16ページまで登録して使用することができます。 DECLKFおよび，DECKSPPのシーケンスを以下に示します。

- フォーム・データの登録(DECLKF)

  > DCS Pn1;Pn2;Pn3"p D....D ST
  > Pn1: ページ番号(省略時0)

  > 0 | = ページ番号1
  > 1-16 | = ページ番号1-16

  > Pn2: フォーム・データ削除(省略時0)

  > 0 | = 登録済みのフォーム・データを全て削除
  > 1 | = 登録するページのフォーム・データのみ削除
  > (ロックされているデータは，削除することができない)

  > Pn3: フォーム・データ ロック(省略時0)

  > 0 | = ロックする(以後発行するDECLKFを無視する)
  > 1 | = ロックしない

  > D....D: フォーム・データ(シクセル形式)

- フォーム・オーバーレイ設定(DECKSPP)

  > CSI Ps'v
  > Ps: 設定パラメータ(省略時0)

  > 0 | = フォーム・オーバーレイを解除
  > 1-16 | = ページ番号Psのフォーム・データを使用してオーバーレイ を行う

注意 フォーム・データ中に，DECLKFとDECKSPPのシーケンスを指定することはできません。 フォーム・データ中にリセットシーケンス(DECSTR，RIS)を指定すると，正常に動作しません。 漢字LN05プリンタのフォーム・オーバーレイ機能と，以下の点で異なります。 漢字LN05では，一度登録されたフォーム・データはジョブにまたがって使用することができます。トランスレータによるフォーム・オーバーレイでは，各ファイルごとにフォーム・データ，およびロック機能をリセットします。よって，フォーム・オーバーレイを使用する場合は，各ファイルごとにDECLKFシーケンスでフォーム・データを登録する必要があります。複数のファイルで共通なフォーム・データは，SETUP モジュールに登録して使用することをお勧めします。

### 2.2.1.8 外字のローディング

DECの他の漢字プリンタと同様に，ユーザ定義文字を印字することができます。以下に， VMSとULTRIXでのユーザ定義文字の利用方法を示します。

注意 トランスレータの行うユーザ定義文字のローディングは，PostScriptのフォント定義によって実現されています。このことは，ユーザ定義文字の使用によって印字性能が低下することを意味します。同じ文字が何度も現れる場合は，この制限は緩和されますが，具体的な性能は文字の現れる頻度や分布の仕方によって変化します。 ユーザ定義文字のプリロード機能は，トランスレータではサポートされません。 漢字LN03/DEClaser2300と異なり，トランスレータのユーザ定義文字は，プリント・ジョブごとにリセット(削除)されます。

#### 2.2.1.8.1 VMS

日本語VMSではユーザ定義文字の作成，管理のために，FEDITユーティリティを提供していますが，日本語VMS V5.5ではさらにCHARACTER_MANAGERユーティリティV2.0 (以下 CMGRユーティリティと記述します)も提供されるようになりました。このため，テキスト・トランスレータは，DEC拡張漢字領域の文字コードに遭遇した場合，そのときのシステム環境によって，以下のような動作を行います。

前へ | 次へ | 目次 | 索引