絵文字のマーカー

  1. 自動マーカーがオンの場合に、絵文字を選択するとその文字コードを含む合字もマークされますが、想定内の動作でしょうか?
    その文字が含まれているので正しい動作にも思えますが。
    認識済みのことでしたらすみません。
    Windows 7 なのでカラー絵文字を表示できませんし、私の環境のみでの動作でしたら、このコメントは無視してください。

    🐦 bird(U+1F426)
    🐦‍⬛ black bird(U+1F426 U+200D U+2B1B)

    https://light.dotup.org/uploda/light.dotup.org66122.jpg

    Windows 7 (32bit)
    Mery (x86) Ver.3.6.0

     |  774  |  返信
  2. ご報告ありがとうございます。

    > 🐦‍⬛ black bird(U+1F426 U+200D U+2B1B)

    私の環境 (Windows 11 22H2 22621.2283) でも確認してみましたが、DirectWrite のオン/オフにかかわらず鳥と黒豆腐?の 2 文字に分かれて表示されました。

    おそらく、フォント (Segoe UI Emoji 1.35) が対応していないのだと思います。

    > 自動マーカーがオンの場合に、絵文字を選択するとその文字コードを含む合字もマークされますが、想定内の動作でしょうか?

    そうですね、これは想定内の動作です。

    結合文字は U+1F426 U+200D U+2B1B のシーケンスを 1 つとして描画しますが、その描画結果はフォントに依存します。

    言い換えると、結合して描画されたかどうかは、実際に描画してみないとわからないということです。

    U+1F426 の部分だけに色を付ける場合、あらかじめ "U+1F426" と "U+200D U+2B1B" に分割して描画する必要がありますが、それを行うと、フォントが対応している場合でも分割して描画されてしまいます。

    ちなみに、私の環境では Google Chrome でも「🐦‍⬛ black bird(U+1F426 U+200D U+2B1B)」は鳥と黒豆腐に分かれて描画され、Ctrl + F で「🐦 bird(U+1F426)」をページ内検索すると、鳥と黒豆腐の両方がハイライト表示されました。

    この問題は仕様上の制限事項ということで、ご了承いただければと思います。フォントが対応してくれるのが一番良いのですけどね。

    また、メールでご連絡いただいた件について、Segoe UI Emoji 1.40 は Windows 11 build 25905 (Insider Preview) から実装されたとの情報がありましたが、残念ながら私のパソコンはサポート対象外のようで、Insider Preview をインストールすることができませんでした。

    Windows 11 をサポートするパソコンを手に入れることができたなら、改めて検証してみたいと思います。

     |  Kuro  |  返信
  3. ご返信、ありがとうございます。

    🐦‍⬛は Emoji v15.0 で追加された絵文字でした。
    ですので、Segoe UI Emoji 1.35 には入っていませんね。
    失礼しました。

    これらが妥当でした。
    😶 face without mouth(U+1F636)
    🌫 fog(U+1F32B)
    🌫️ fog(U+1F32B) + U+FE0F
    😶‍🌫️ face in clouds(U+1F636 U+200D U+1F32B U+FE0F)

    😮 face with open mouth(U+1F62E)
    💨 dashing away(U+1F4A8)
    😮‍💨 face exhaling(U+1F62E U+200D U+1F4A8)

    🐈 cat(U+1F408)
    ⬛ black large square(U+2B1B)
    🐈‍⬛ black cat(U+1F408 U+200D U+2B1B)

    🐻 bear(U+1F43B)
    ❄ snowflake(U+2744)
    🐻‍❄️ polar bear(U+1F43B U+200D U+2744 U+FE0F)

    ハイライト表示について、確かに Google Chrome での検索でも同様の表示になりますね。
    仕様上の制限事項ということで了解しました。

    もう1点どうでも良いことですが、Mery で、くっつけた文字(🌫や💨など)のほうを選択しても、ハイライト表示にはならないみたいですね。
    また、Mery で DirectWrite オフで、😮‍💨の💨を選択すると、💨がハイライト表示されますが、😶‍🌫️の🌫️(U+FE0F付き)を選択すると、🌫(U+FE0Fなし)はハイライト表示されないみたいです。
    U+FE0F はその前の文字と一体になって扱われているみたいですね。

    Segoe UI Emoji 1.40 については、単なる .ttf ファイルなので、Insider Preview のインストールとか関係ないような気がします。
    私の Windows 7 のパソコンで使えていますし。
    しかし、絵文字のハイライト表示のされ方を Segoe UI Emoji 1.35 で確認していただけたようですので、もうダウンロードする必要はないと思います。

     |  774  |  返信
  4. ご返信ありがとうございます。

    > もう1点どうでも良いことですが、Mery で、くっつけた文字(🌫や💨など)のほうを選択しても、ハイライト表示にはならないみたいですね。

    そうですね。くっつけた文字を選択した場合、たとえば、🌫 は "U+1F32B U+FE0F" が選択されているため、「🌫 fog(U+1F32B)」のみは自動マーカーの対象にはなりません。

    より簡単な文字で考えると、"ab" (U+0061 U+0062) が選択されてる場合、"a" (U+0061) は自動マーカーの対象にはならないということです。

    > また、Mery で DirectWrite オフで、😮‍💨の💨を選択すると、💨がハイライト表示されますが、😶‍🌫️の🌫️(U+FE0F付き)を選択すると、🌫(U+FE0Fなし)はハイライト表示されないみたいです。

    これも上記と同様の理由です。

    😮‍💨 の 💨 は、"U+1F4A8" なので 💨 を選択すると、「💨 dashing away(U+1F4A8)」がハイライト表示されます。

    ただし、😶‍🌫️ の 🌫️(U+FE0F付き)は "U+1F32B U+FE0F" なので、🌫️(U+FE0F付き)を選択しても「🌫 fog(U+1F32B)」はハイライト表示されません。

    > U+FE0F はその前の文字と一体になって扱われているみたいですね。

    そうですね。U+FE0F は異体字セレクタ (VARIATION SELECTOR-16) と呼ばれる特殊な文字で、通常、前の文字に連結して 1 文字として扱われます。

    ちなみに、自動マーカーではありませんが、[検索] 機能では [あいまい検索] の [異体字セレクタを無視する] オプションを使うことで、"U+1F32B U+FE0F" と "U+1F32B" を同一の文字とみなして検索することが可能です。

    > Segoe UI Emoji 1.40 については、単なる .ttf ファイルなので、Insider Preview のインストールとか関係ないような気がします。

    Segoe UI Emoji フォントは再配布が禁止されているため、Microsoft が公式に配布しない限り、入手できないと思います。

    他のコンピューターへのコピーも禁止されているようなので、Insider Preview を使用している知り合いからフォント ファイルをもらうというのもライセンス違反になりそうです。

    やはり、検証するためには自分のパソコンに Windows 11 Insider Preview をインストールする必要がありそうですね。

    【参考】Segoe UI Emoji font family
    https://learn.microsoft.com/ja-jp/typography/font-list/segoe-ui-emoji
    * ライセンスや再配布について "Font redistribution FAQ for Windows" に記載されていました。

     |  Kuro  |  返信
  5. ご返信、ありがとうございます。
    了解しました。

    > Segoe UI Emoji フォントは再配布が禁止
    そうだったのですね。以前のものに戻しておくことにします。

     |  774  |  返信
スポンサーリンク