文字フォントの縦横比を変えて印刷することができます。
下記の2つの方法があります。
- 独自コントロールを使う
- Wordの機能を使う方法[Access+Word]
「カスタムサンプルシステム」があります。
ApwActX.ocxファイルにあるLblScl非連結コントロールを使います。
<SoraActiveXコントロールのインストール> |
|
LblScl非連結コントロールを使う場合、SoraActiveXコントロールをインストールする必要があります。SoraセットアップCD-ROMのApwActXフォルダの下のsetup.exeを実行してください。画面の指示に従いセットアップを行います。
|
- Soraレポートを[デザイン]で表示します。
- ツールボックスを表示します。
- ”コントロールの選択”ボタンをクリックします。
ActiveXコントロールの一覧が表示します。

- ”ApwActXLblScl”をクリックします。
- [デザイン]画面に範囲を指定します。
LblSclのコントロール(ここでは名前を”LblScl4”とします)が張り付きます。
BackColorプロパティを変更し、背景色を調整します。FontSizeプロパティを変更し、文字の大きさを調整します。FontScalingを調整し、文字の横の大きさを調整します。

- レコードの内容を表示させる。
GKKKSTDテーブルのKKKNAM1フィールドの内容を表示させます。KKKNAM1フィールドのテキストボックスを追加します。(ここでは名前を”KKKNAM1”とします)
[詳細]セクションの[フォーマット時]イベントに下記内容を追加します。
Me![LblScl4].Caption = Me![KKKNAM1]

<LblSclコントロールプロパティ>
キー | 説明 |
[BackColor] | 背景色 |
[ForeColor] | 前景色 |
[BackStyle゚] | 背景スタイル |
[FontBold] | フォント太字(700) |
[FontItalic] | フォント斜線 |
[FontName] | フォント名 |
[FontSize] | フォントサイズ |
[FontUnderline] | フォント下線 |
[FontWeight] | フォント太さ |
[FontScaling] | 横幅の倍率 |
| 100以下縦長、100以上横長 |
[Caption] | 標題 |
[FontStrikethru] | フォント取消し線 |
Wordの機能を使う方法[Access+Word] |
Wordの機能を使います。Wordがセットアップされている必要があります。
テーブルにOLEオブジェクト型のフィールドを作成し、フォームで文字を入力するときにOLEオブジェクト型のフィールドに縦横比を変えた文字を自動(apOleWord関数)で設定します。

- モジュールの追加
Access2002の場合、SoraのセットアップCD-ROMの \Apw02Cst フォルダの下にある \Cst02フォルダの Apw02C01.mdbファイルの[モジュール]Cst01をインポートします。
- Wordの参照設定
[モジュール]Cst01を[デザイン]で開き、ツールバーの[ツール]-[参照設定]をクリックします。[参照可能なライブラリファイル]の一覧からWord2000の場合”Microsoft Word 9.0 Object Library”Word2002の場合”Microsoft Word 10.0 Object Library”をチェックします。
- テーブルにOLEオブジェクト型のフィールドを作成
文字フォントの縦横比を変えて印刷したいフィールドのテーブルにOLEオブジェクト型のフィールドを作成します。ここでは[KKKOLE]とします。
- Soraフォームにコントロールを追加
OLEオブジェクト型のフィールドのコントロールを追加します。ここでは[KKKOLE]とします。
文字フォントの縦横比を変えて印刷したいフィールド(ここでは[社名1])の[更新後処理]イベントに下記内容を追加します。
Private Sub 社名1_AfterUpdate()
'Word編集
apOleWord Me![KKKOLE], IIf(IsNull(Me![社名1]), "", Me![社名1]), 24, 40
End Sub
- Soraレポートにコントロールを追加
OLEオブジェクト型のフィールドのコントロールを追加します。
<apOleWord関数>
文字の縦横比を変える
Public Function apOleWord(prmCtlOLE As Control, prmBuf As String, prmSize As Single, prmScaling) As Boolean
- prmCtlOLE
Wordで設定するオブジェクトフレームを指定します。
- prmBuf
設定する内容を指定します。文字型の値を使用します。Nullは使用できません。
- prmSize
フォント サイズをポイント単位で設定します。値の取得および設定が可能です。単精度浮動小数点数型 (Single) の値を使用します。
- prmScaling
フォントに適用する倍率を設定します。現在のサイズに対する割合で、水平方向に文字列を拡大または縮小します。1 〜 600 の倍率を指定します。値の取得および設定が可能です。長整数型 (Long) の値を使用します。
<例>
apOleWord Me![KKKOLE], IIf(IsNull(Me![社名1]), "", Me![社名1]), 24, 66