1 件の投稿を表示中 (合計 10 個)
  • 作成者
    投稿
  • #19435
    redakt55
    参加者

    以下の合成用濁点・半濁点の表示位置がずれます。
    U+3099 COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK
    U+309A COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK

    たとえば
    U+306F U+3099 U+304F U+306F U+3099 U+304F
    な文字列を表示させると,本来は「ばくばく」に見えるはずですが,濁点の位置がちょうど 1 文字右にずれて「はぐはぐ」のように見えます。

    MS 明朝や IPA 明朝などいくつかの日本語書体で試しましたが,同じ結果でした。
    (MSP 書体のようなプロポーショナルフォントだとぴったり「く」のところには来ませんが)

    #19440
    Yutaka Emura
    キーマスター

    redakt55 様

    いつも EmEditor Professional をお使いいただき、誠にありがとうございます。

    こちらでは、Windows 8.1 を使用していますが、MS明朝やMSゴシックは問題ありませんでした。Arial のような英文フォントだと問題が再現しました。しかしながら、これは、やはり対応するフォントを利用するべきだと思います。同じMS明朝でも、OSによって異なるため、Windows Vista では正しく表示されなくても Winodws 8.1 では正しく表示されることがあります。よろしければ、お使いのOSの種類も教えていただけると幸いです。

    よろしくお願い申し上げます。

    Yutaka

    #19442
    redakt55
    参加者

    OS はWindows 7 です。
    うーん,何が違うんでしょうね。こちらでも再現条件を探ってみます。

    #19444
    Yutaka Emura
    キーマスター

    redakt55 様

    いつも EmEditor Professional をお使いいただき、誠にありがとうございます。

    Windows 7 Professional SP1 (日本語版) 上で、EmEditor v14.4.1 beta 1 を試してみましたが、やはり MS明朝とMSゴシックは問題ありませんでした。Arial などの英文フォントでは問題が再現されましたが、対応する日本語フォントを使っていただければ問題はないと思います。何か Windows システムの設定の違いが影響されているのでしょうか? Windows の言語の設定は日本語になっているでしょうか?

    よろしくお願い申し上げます。

    Yutaka

    #19445
    redakt55
    参加者

    こちらも Windows 7 Professional SP1 でした。
    「Windows の言語の設定」というのは,「システムロケール」でいいのでしょうか。でしたら「日本語」になっていました。
    四ヶ月くらい前に新規購入したマシンです。以前教えていただいた,レジストリーの FontLink\SystemLink の設定を「Inconsolata」というフォントについて変更した以外は,とくに何か変わった設定を行った記憶がありません。
    EmEditor のバージョンは Version 14.4.0(64bit)です。

    濁点がちょうど 1 字ぶん右にずれるのは,

    • MS明朝,MSゴシック
    • IPA明朝,IPAゴシック,IPAmj明朝,IPAex明朝,IPAexゴシック
    • ヒラギノ角ゴ Pro W5
    • DFP平成ゴシック体W5
    • A-OTF 新ゴ Pro R
    • Rg本明朝M

    などなど,試したほとんどの和文フォントが当てはまります。OpenType フォントも,古い TrueType フォントもですね。

    一方,「は」の右あたり(さほど悪くない位置)に濁点の来るフォントとしては,メイリオ,Meiryo UI,Koruri(小瑠璃)などがありました。

    #24896
    redakt55
    参加者

    これとよく似た現象を見つけたので報告します。
    こんどは合成用濁点ではなく,欧文に使う合成用ダイアクリティカルマークです。

    U+0061 U+006F U+0302 U+0065 という文字列を表示します。
    つまり,「aoe」の「o」と「e」の間に合成用のサーカムフレックスを入れます。

    すると,本来なら「aôe」のように見えるはずです。
    ところが,Source Code Pro や Consolas では「aoê」のように,サーカムフレックスが「e」の上に付いたように表示されます。

    この「a」を他の文字に変えると,例えば「c」に変えると,正常に「côe」と表示されます。
    いろんな文字で試すと,異常なのは「abefijkopqruvwxzAEFKOQRUVWXZ」を使ったときで,それ以外のアルファベットだと正常です。また,いくつか試した記号や(英字以外の)文字では正常でした。
    フォントをいろいろ変えてみると,異常な場合の表示のされ方が少し違うものの,異常の起こり方は(試した範囲では)同じでした。
    Source Han Code JP N や Inconsolata では,異常な場合のみサーカムフレックスがバッテンマークになります。
    Georgia や游ゴシックでは,異常な場合のみ,サーカムフレックスが合成されずに独立の文字として表示されます。
    Linux Libertine G では,異常な場合のみサーカムフレックスが消えます。

    U+0061 U+006F U+0302 U+0065 が正常に表示されるフォントは,試した範囲では一つもありませんでした。

    OS は Windows 10 Pro(バージョン 1803,ビルド 17134.165),64 bit OS です。
    EmEditor は 17.9.0(64 bit)です。

    #24898
    Yutaka Emura
    キーマスター

    redakt55 様

    いつもお世話になっております。江村です。

    これは、EmEditor の問題というより、Windows の問題になります。Windows 10 では、「aôe」と正しく表示されました。古い Windows では、正しく表示されない可能性もあります。フォントを変更したり、DirectWrite をオンにしたりして、お試しいただけると幸いです。

    よろしくお願い申し上げます。

    #24899
    redakt55
    参加者

    EmEditor 以外ではこのような現象は今のところ見つかっていないんです。Atom もメモ帳も Skype も LibreOffice も Edge も Firefox も Thunderbird も正常です。
    主に Windows 側に問題があるとしても,EmEditor との組み合わせで問題が発生する,という可能性はないでしょうか。

    なお,#24896 に書きましたように,Windows 10 です。古い Windows ではありません。
    また,フォントはさまざまに変えて試していますが,正しく表示できるフォントが一つも見つかっていません。
    残るは DirectWrite ですが,これをオンにする方法,というのが調べても分かりませんでした。どうすればよろしいでしょうか。

    #24900
    Yutaka Emura
    キーマスター

    redakt55 様

    いつもお世話になっております。江村です。

    Windows 10 でも、フォントによっては問題が再現しましたので、調べたところ、こちらで修正することができました。

    現状では、レジストリで、HKEY_CURRENT_USER\Software\EmSoft\EmEditor v3\Common キーに、UseWidthArray という REG_DWORD の値を新規作成して 0 を代入していただければ、問題は回避できますが、太字があったりすると、文字の位置がずれてしまうことがあります。

    次のバージョンでは、修正していますので、レジストリを変更しなくても正しく表示されるはずです。公開されたらお試しください。

    この度は、貴重なご意見をいただき、ありがとうございました。おかげ様で重要な問題を修正することができました。

    今後もよろしくお願い申し上げます。

    P.S.
    Directwrite については、以下をご覧ください。

    https://jp.emeditor.com/text-editor-features/history/new-in-version-17-6/

    #24902
    redakt55
    参加者

    おお〜! ありがとうございます!

1 件の投稿を表示中 (合計 10 個)
  • このトピックに返信するにはログインしてください。