at backyard

Color my life with the chaos of trouble.

Excelファイルに記述された特定の絵文字付きの文章がNumbers上だと上手く表示されないケースがある?

はじめに

この文章には自身の推測も含まれている。
またおそらくはNumbers起因の問題だと思われるのと、この問題自体の優先度はとても低いため、問題解決のために向けた調査などは行っていない。

問題の内容について

github.com

Excelize というGoでExcelファイルを操作できるパッケージがある。
これを使ってExcelファイルを生成させているときに今回の挙動について気づいた。
(ちなみに一応書いておくと、Excelize 側の問題ではない)

package main

import (
    "fmt"

    "github.com/xuri/excelize/v2"
)

func main() {
    f := excelize.NewFile()

    fileName := "test.xlsx"

    f.SetSheetRow("Sheet1", "A1", &[]interface{}{"🌱 - foo"})
    f.SetSheetRow("Sheet1", "A2", &[]interface{}{"🧚<200d>♀️ - foo"})

    if err := f.SaveAs(fileName); err != nil {
        fmt.Println(err)
    }
}

(※公開前に気づいたけど、はてなブログのコード表示でも 🧚‍♀️ はそのまま表示されていないようだ。こういうタイプの絵文字を描画できないケースは多いのかもしれない)

例えば、上のようなコードを書いて実行すれば、下記のようなエクセルが表示される。
Googleスプレッドシート上で表示させている)

Googleスプレッドシート上で表示

そしてこのEXCELmacのNumbersで表示させたところ、その問題に気づいた。

まずはmacのFinder上で表示させてみると、まだこの時点では正常に表示されているのがわかる。

macのFinder上での表示

そしてこれをNumbersで表示させてみると、下記のように2行目のテキストが正常に表示されなくなる。
(というか、この時点で🧚‍♀️ではなく🧚で表示されている)

macのNumbers上で表示

問題の原因(おそらく)

色々と試してみたところ、どうやらNumbersでは Excelファイル上で 🧚‍♀️ のような絵文字が入力されている場合、上手く表示できない問題があるようだ。
ただし、🧚は表示できる。

最初の表示できない絵文字は :female_fairy: だが、 :fairy: は表示できる。
ためしに :male_fairy: に変えてみたところ、こちらも上手く表示できないでいた。

というわけで、Numbersではこういう 男性の妖精 とか 女性の妖精 のような絵文字(こういう男女の区別がついているようなタイプの絵文字はなんと呼べばいいのだろう?)には対応できていないケースがあるのかと思われる。
ちなみにNumbers自体で🧚‍♀️を使うケースでは正常に表示できていた。
あくまでExcel上で入力されている場合に、Numbers側だと上手く表示できない、という感じみたい。