件名の太字描画におかしい部分がありますNo.03140
ヒラメ さん 18/04/09 20:17
 
とある件名となっているの未読メール(太字)について、文字の描画
がダブっている部分があります。

一応再現性はありますが、特定の件名にしないと再現できなかった
ため別途メールでお伝えしておきます。

再現手順は以下となります。
(秀丸メールがサブモニタにある場合しか再現しません)
・新規テキストメールを作成
・別途お送りする文字列を件名にコピペ
・草稿に保存
・草稿に保存されたメールを未読にする

フォントの設定は以下となっています。
メイリオ 9.0ポイント(以前お送りした設定ファイルのままです)

秀丸メール Version 6.80 Beta 2 (64bit)
Windows 10 Pro (Fall Creators Update), 1709 (16299.309) (64bit)

[ ]
RE:03140 件名の太字描画におかしい部分がNo.03144
秀まるお2 さん 18/04/10 10:32
 
 以前送っていただいた設定ファイルを使って、さらにマルチディスプレイにしてい
ろいろテストしてみたんですが、いまいち再現できませんでした。

 一応、こちらの再現環境としては、

 Windows10 64bitのメインマシン: ディスプレイ:GeForce GTX 1050
                                 メイン:4K  dpi=150%
                                 サブ:  1680x1050 dpi=100%

 Windows10 64bitのMac-mini:     ディスプレイはIntel Corei5-2415M標準
                                 メイン: Full-HD dpi=150%
                                 サブ:   1680x1050 dpi=100%

 の2つの環境で、以前送っていただいた設定ファイルを使いました。サブモニタ上
で未読にしてみたんですが、いまいち再現しないです。

 文字の描画の時の文字ピッチは、実は「3Dグラフィックスアクセラレータを使った
文字の描画」がONの時は、僕の方で、WindowsのDirectWriteっていうAPIを呼び出し
て文字ピッチを取得してから、さらにDirectWriteのAPIを使うなどして描画してるの
で、その辺の処理がバグってる可能性あるかなぁと思いますけども・・・。ただ、太
字にする処理として、実はまったく同じ描画を1ピクセルずらして2回実行するって
風な処理になってまして、1回目と2回目で「h」だけずれるというのは、ちょっと
理解しがたい現象です。

 再現できないと、ちょっと原因究明も難しいです。

 サブディスプレイ上でしか起きないのも、ちょっと謎です。ディスプレイドライ
バーのバグの可能性もそこそこあるような気がします。DirectWriteを呼び出す処理
の中にたしかにDPIスケールでかけ算する処理はあるにはあるんですが、そこがバグ
ってるなら文字全体のピッチがおかしくなるはずで、「h」だけずれるのは無理があ
ります。

 とりあえず「全般的な設定 - ウィンドウ - 文字の描画」の中にあるオプションを
いろいろいじってとうか試していただく作戦があります。例えば「カラー絵文字」の
オプションをON/OFF切り替えすれば直るかもしれません。「3Dグラフィック
ス・・・・」のオプションOFFでも直るかもしれません。(そうすると文字がきれい
じゃなくなるかもしれませんが)

 他の回避策として「全般的な設定 - ウィンドウ」の「メール一覧のフォント」の
「選択▼」の中の「太字描画に本物の太字フォントを使う」もあります。

 その辺で回避を試みるってことでどうでしょうか。

[ ]
RE:03144 件名の太字描画におかしい部分がNo.03165
秀まるお2 さん 18/04/11 12:09
 
 こちらの件ですが、再現までには至ってないんですが、再現の一歩手前の所まで行
きました。

 送っていただいた設定ファイルだと、「3Dグラフィックス・・」がONで、さらに、
アンチエイリアスの方式が「GDI CLASSIC」になってました。その設定でいろいろ試
してみたら、「e」と「h」の間が、詰まってる場合と詰まってない場合の2パターン
あることを見つけました。

 たぶん、描画する座標とかの関係で、たまたま空いたり詰まったりすることがある
んだと思います。それで、太字にする用の描画と元々の描画とで詰まる/詰まらない
の違いが起きるとずれるんだと思います。

 「GDI CLASSIC」をやめて「標準」にするか、または他の「ClearType高繊細」とか
にすれば起きないみたいなので、一回それで試してみて欲しいです。それで直るよう
でしたら、「GDI CLASSIC」は廃止してもいいかなぁという気がします。

[ ]
RE:03165 件名の太字描画におかしい部分がNo.03166
ヒラメ さん 18/04/11 14:24
 
アンチエイリアスの方式を全て試してみました。

標準                 OK
アンチエイリアス無し ダブり
GDI CLASSIC          ダブり
GDI NATURAL          ダブり
ClearType標準        OK
ClearType高精細      OK(サブモニタだと滲むので見にくい)
アウトライン式       OK(サブモニタだと滲むので見にくい)

私の環境ではメイン・サブ両方でバランスよく見やすいのは
「ClearType標準」のようでした。これで運用しようと思います。
(サブモニタではGDI CLASSICの方が見やすかったりするので
 オプションは廃止しなくても・・・と思います。)

ありがとうございました。

[ ]
RE:03166 件名の太字描画におかしい部分がNo.03167
秀まるお2 さん 18/04/11 15:00
 
 確認ありがとうございます。

 普通は1ピクセルずらして描画すればまったく同じビットマップで描画されるはず
が、メイン150%、サブ100%のサブ上に限り、計算が狂うのかもしれません。

 とりあえず、「文字の描画」のヘルプページに、今回ダブりを確認していただいた
設定はお勧めしないって風に記載しようと思います。

[ ]
RE:03167 件名の太字描画におかしい部分がNo.03228
ヒラメ さん 18/04/18 14:56
 
こちらについては残念ながらBeta 6でもおかしいようです。
状況はBeta 5と全く同じ状態です。

秀丸メール Version 6.80 Beta 6 (64bit)

そして今更なのですが、DPIの設定は以下のようになっていました。
メイン 175%
サブ  100%
もし関係しているようでしたらすみません・・。

[ ]
RE:03228 件名の太字描画におかしい部分がNo.03229
秀まるお2 さん 18/04/18 15:43
 
 こちらについては、すみませんがプログラム的には何も対応してなくて、とりあえ
ずヘルプの方に、GDI CLASSIC等だとそういう問題が起こりえるってことだけ記載す
るだけにしました。

 DirectWrite(およびDirect 3D)のAPIの仕組み的に、スケーリング(拡縮の倍
率)を指定する必要があって、それが、メインの画面DPI値を指定してやらないと、
サブモニタ側もうまくスケーリングされないです。そうするとサブ側のスケーリング
に誤差が出て、特に「GDI CLASSIC」とかのケースで文字ピッチがずれるんだと思い
ます。

 DirectWriteの中では文字ピッチはサブピクセル単位というか、32bitの浮動小数点
数で計算されてるんですが、GDI CLASSICだとそれを無理矢理ピクセル単位に補正す
るようで、それでずれが起きるんだと思います。

 ということで、やはり設定変更で回避してもらう以外無いってことでお願いします。

[ ]
RE:03229 件名の太字描画におかしい部分がNo.03230
ヒラメ さん 18/04/18 23:22
 
なるほど、そういうことですか。わかりました。
幸いあまり見やすさに影響のない範囲で次善の設定がありましたので
その設定で回避するようにします。

ありがとうございました。


[ ]