2012/12/04

Outlookのメッセージ作成で意図しないフォントが使われる

Outlookには、妙な「仕様」がある。メッセージを作成するときに、意図しないフォントが使われることがあるのだ(詳細は後述)。
これは、『KB414804: [OL2002] 半角英数字の入力時に フォントが Arial で表示される』でも触れられているのだが、MSによれば「仕様」であって、バグではないそうだ。これを回避するには、レジストリを操作する必要があるが、今回は、これをPowerShellで実行する方法を紹介する。

[Windows]+[R]でpowershellを起動し、以下の通り実行する。
PS C:\> New-ItemProperty 'HKCU:\Software\Microsoft\Office\11.0\Outlook\Preferences' -Name 'DontUseDualFont' -value 1 -propertyType DWORD


DontUseDualFont : 1
PSPath          : Microsoft.PowerShell.Core\Registry::HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Outlook\Preferences
PSParentPath    : Microsoft.PowerShell.Core\Registry::HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Outlook
PSChildName     : Preferences
PSDrive         : HKCU
PSProvider      : Microsoft.PowerShell.Core\Registry



PS C:\>
なお、上はOutlook2003の例。引数中の「11.0」は、Outlookのバージョンによって適宜換える必要がある。

以下、詳細。

Outlook 2003の場合、「ツール(T)」→「オプション(O)...」で、「オプション」ダイアログを表示される。


メッセージ形式に「テキスト形式」が選択されていることが確認できる。

さらに、「メール形式」タブ→「フォント(F)...」ボタンを押下すると、「フォント」ダイアログが表示される。


メッセージのフォントに「MS 明朝, 9 pt」が選択されていることが確認できる。

この状態でメッセージを作成した場合、常識的に考えれば、全角文字・半角文字双方にMS明朝が使われることが期待されるが、実際にはそうならない。メッセージを新規作成し、「テストtest」と入力し、その行をコピーして、次の行にペーストしてみよう。


 一行目と二行目の「test」のフォントが違うのが判る。


この二行をMS-Word等にコピー&ペーストしてみると判るが、一行目はArialで、二行目はMS明朝だ。

ここで、上の対策を実施し、Outlookを再起動して、同じようにメッセージを作成してみる。


期待通り、一行目と二行目の「test」のフォントが同じになった。


この二行をMS-Word等にコピー&ペーストすると、一行目・二行目共にMS明朝になっているのが判る。

この現象は、「テキスト形式」の場合だけでなく、「リッチテキスト形式」の場合にも発生する。

0 件のコメント: