Linux( Mint)でChromeで「小説家になろう」や「カクヨム」などで全角記号の白丸である「○」が半角で4分の1の小ささで表示されてしまう不具合について

 2023年12月から2024年1月にかけて、Linux( Mint)でChromeで「小説家になろう」や「カクヨム」などで全角記号の白丸である「○」が半角で4分の1の小ささで表示されてしまう不具合に気づきました。


 Linux( Mint)のFirefoxには、この不具合が無いようです。

 ちなみに、Linux( Mint)のFirefoxは、デフォルトで「TakaoPGothic」フォントなどが設定されるはず?です。


 また、2024年1月10日に仕事で利用させてもらっているノート パソコンのWindows10のEdge(バージョン120.0.2210.121)で、「小説家になろう」と「カクヨム」では不具合は起きない、と思いますが、他のサイトで、Linux( Mint)のChromeの2つの不具合のうち1つと同じ不具合が有り得る事を確認しました。

 2020年にEdgeは、ChromeがコードのベースにしているChromiumをベースとするように成ったので、念のため調べたら、不具合を確認しました。

 もしかしたら、Chromiumのバグによる不具合なのかもしれません。



 まず、全角記号の白丸には2種類あります。


 ① ○ 白丸 ホワイト サークル(WHITE CIRCLE) UnicodeのU+25CB

 ② ◯ 大きな丸 ラージ サークル(LARGE CIRCLE) UnicodeのU+25EF


 WindowsのMicrosoft IMEの文字の入力候補では、ホワイト サークルは「記号」という説明が右に有りますが、ラージ サークルは説明が無く、よく見ると、ホワイト サークルよりもラージ サークルは少しだけ大きいです。


 Linux MintのMozc?の文字の入力候補では、ホワイト サークルは「[全]丸」という説明が右に有り、ラージ サークルは「[全]大きな丸」という説明が有り、よく見ると、ホワイト サークルよりもラージ サークルは少しだけ大きいです。


 そのため、特に、Windowsでは、Microsoft IMEの説明不足のせいで、気づかずにホワイト サークルとラージ サークルを混在させてしまいやすいです。


 ちなみに、紛らわしい文字としては、他に漢数字のゼロである「〇」が有ったりします。



 話を戻すと、

 Linux( Mint)でChromeで「小説家になろう」や「カクヨム」などでホワイト サークルである「○」が半角で4分の1の小ささで表示されてしまう不具合が起きます。


 ちなみに、ラージ サークルである「◯」は、どのブラウザでも、どの場合でも、正常に表示されます。



 そのため、「『小説家になろう』と『カクヨム』で白丸が普通に表示されるようにLinux対応したい」という投稿者、作者はホワイト サークルである「○」をラージ サークルである「◯」に変更する対策方法も有ります。

 ただ、データ的に意味論的に、ホワイト サークルである「○」ではなく、ラージ サークルである「◯」で良いのか? という問題が有ります。

 なぜなら、ラージ サークルである「◯」はJISで文字の合成のために用意されましたが、結局、合成してはならないとされて、Unicodeに「ラージ サークル」として収録されてしまった文字のようだからです。

 文字の合成とは、例えば、「◯」と「1」を「①」と見なして表示したり印刷したりする事です。

 しかし、企業が「①」などを文字の合成からではなく、外字として「①」という1文字として用意するように成ったので、ラージ サークルである「◯」を合成してはならないとされたそうです。


 つまり、データ的に意味論的に、普通の人が考える白丸は、ラージ サークルである「◯」ではなく、ホワイト サークルである「○」という事に成る、と思われます。


 しかし、そのおかげで、ラージ サークルである「◯」はChromeやEdgeのバグの対象に成らずに済んだ、と思われます。



 さて、ブラウザで選択状態にした文字の上で右クリックして、Chromeでは「検証」、Firefoxでは「調査」を選択すると、選択状態の文字に適用されているCSSが分かる画面の部品が表示されます。

 この画面の部品は、Chromeの「デベロッパーツール」、Firefoxの「ウェブ開発ツール」で、メニューから表示する事もできます。

 その画面の部品で、自分のパソコンの中だけでリアル タイムにCSSを無効化したり自由に変更したりできます。

 「ウェブ デザイン」の基礎を学んでいた時に、教わりました。



 再び話を戻して、

 Chromeの「デベロッパーツール」、Firefoxの「ウェブ開発ツール」で、ホワイト サークルである「○」が半角で4分の1の小ささで表示されてしまう不具合が起きる条件を調べたら、次のような結果でした。


 ①文字コードUTF-8 CSSのfont-family無し

 ・Linux Mint Chrome 不具合発生 ※具体的なフォントを設定すると、正常表示

 ・Linux Mint Firefox 正常表示

 ・Windows10 Edge 正常表示


 ②文字コードUTF-8 "font-family: serif;"

 ・Linux Mint Chrome 不具合発生 ※具体的なフォントを設定すると、正常表示

 ・Linux Mint Firefox 正常表示

 ・Windows10 Edge 正常表示


 ③文字コードUTF-8 "font-family: sans-serif;"

 ・Linux Mint Chrome 不具合発生 ※具体的なフォントを設定すると、正常表示

 ・Linux Mint Firefox 正常表示

 ・Windows10 Edge 正常表示


 ④文字コードUTF-8 "font-family: 'Arial', serif;"

 ・Linux Mint Chrome 不具合発生

 ・Linux Mint Firefox 正常表示

 ・Windows10 Edge 不具合発生


 ⑤文字コードUTF-8 "font-family: 'Arial', 'TakaoPGothic', serif;"

 ・Linux Mint Chrome 不具合発生

 ・Linux Mint Firefox 正常表示


 ⑥文字コードUTF-8 "font-family: 'Arial', 'MS Gothic', serif;"

 ・Windows10 Edge 不具合発生


 ⑦文字コードUTF-8 "font-family: 'Arial';" ※日本語サイトでは駄目な変な設定

 ・Linux Mint Chrome 不具合発生

 ・Linux Mint Firefox 正常表示

 ・Windows10 Edge 不具合発生



 どうやら、不具合の原因は2種類あるようで、両方共、ブラウザのバグのようです。


 ①

 ウェブ ページの文字コードがUTF-8であり、

 CSSのfont-familyの記述が無いか、"font-family: serif;"といった総称フォントだけで具体的なフォントの種類の指定が無く、

 Chromeの「設定」の「デザイン」の「フォントをカスタマイズ」がデフォルト設定のままで具体的なフォントの種類の設定が無い場合、

 Chromeがバグで全角記号のホワイト サークルである「○」を何らかの方法で半角で4分の1の小ささで表示してしまうようです。


 ちなみに、CSSのfont-familyの記述が無いか、"font-family: serif;"といった総称フォントだけで具体的なフォントの種類の指定が無い場合は、ブラウザのフォントの種類の設定によって文字が表示されるそうです。


 この不具合への暫定の対策は、Chromeの「設定」の「デザイン」の「フォントをカスタマイズ」で「Takao Pゴシック」のような具体的なフォントの種類を設定する事で、正常に表示されます。


 この不具合への真の対策は、Chromeのバグを直してもらう事です。

 しかし、日本の衰退や日本人の貧困化のせいで、外国人には、日本語のためのバグ修正は費用対効果が悪く見えてしまうので、バグ修正してもらえる可能性は低いかもしれません。

 それに、外国人には、日本語は良く分からない、と思います。

 実際、Unicodeでは、外国人には良く分からなかったので、複数の種類の文字コードから日本語の同じ文字が複数Unicodeに登録されたりしたそうです。


 この不具合は、CSSのfont-familyの設定に左右されるので、Linux( Mint)でChromeで「小説家になろう」などを閲覧した場合に発生します。

 なぜなら、2024年1月9日時点の「小説家になろう」のフォントの種類の設定は「font-family: "メイリオ", "Meiryo", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;」などのような感じに成っているからです。

 (実際は二重引用符と引用符が混在していました……。それでも、最新のブラウザで正常に動作するらしいのですが……。)

 そのため、「メイリオ」フォントが存在するWindowsや、「ヒラギノ角ゴ ProN W3」フォントが存在するMacで、「小説家になろう」を閲覧した場合は、不具合は発生しない、と思います。

 実際、ウェブ検索しても、そのような不具合の情報は見つかりませんでした。

 「小説家になろう」に、Linuxに存在する可能性が高い日本語対応フォントをCSSのfont-familyに最高優先度で先頭のほうに設定して欲しいですが、Linuxは利用者が比較的、少ないので、Linux対応してもらえる可能性は低いかもしれません。


 ちなみに、Chromeの「設定」の「デザイン」の「フォントをカスタマイズ」で「Takao Pゴシック」のような具体的なフォントの種類を設定しても、「小説家になろう」の「新規作品作成」画面で、下記の別の原因による不具合が発生しました。



 ②

 ウェブ ページの文字コードがUTF-8であり、

 CSSのfont-familyの設定で、日本語対応のフォントよりも、日本語非対応のフォントを優先するように設定されていて、

 その日本語非対応のフォントがパソコンに存在する場合、

 ChromeとEdgeがバグで全角記号のホワイト サークルである「○」を、日本語の全角文字ではなく、英語などの半角文字と誤判定してしまって、何らかの方法で半角で4分の1の小ささで表示してしまうようです。


 ちなみに、Chrome、Edge、Firefoxといったブラウザは、日本語対応のフォントよりも、日本語非対応のフォントを優先するように設定されていても、日本語を表示する時に、最優先のフォントが日本語非対応の場合は、その次に高い優先度のフォント、といった感じで、CSSのfont-familyの設定を前から後ろへ順に見ていって、日本語対応のフォントを探してくれる事に成っています。

 しかし、ChromeとEdgeはバグで全角記号のホワイト サークルである「○」を表示する時にCSSのfont-familyの設定の中から日本語対応フォントを探してくれない形に成ってしまっています。


 この不具合への暫定の対策は、Chromeの拡張機能でウェブ ページのフォントの種類の設定を上書きして変更する事で、正常に表示されます。

 ただし、2024年1月9日の時点で信頼できるのか分からない不安な開発者による拡張機能しか無いみたいです。

 そのため、安全、セキュリティ、情報漏洩やウィルス感染の予防を考慮すると、ウェブ ページのフォントの種類の設定を上書きして変更するChromeの拡張機能は、利用しないほうが良いかもしれません。


 この不具合への真の対策は、Chromeのバグを直してもらう事です。

 しかし、日本の衰退や日本人の貧困化のせいで、外国人には、日本語のためのバグ修正は費用対効果が悪く見えてしまうので、バグ修正してもらえる可能性は低いかもしれません。


 この不具合は、CSSのfont-familyの設定に左右されるので、Linux( Mint)でChromeで「カクヨム」を閲覧した場合などに発生します。

 具体例としては、2024年1月9日時点の「カクヨム」のフォントの種類の設定は「"dcsymbols", "游明朝", "YuMincho", "ヒラギノ明朝 Pr6N", "Hiragino Mincho Pr6N", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 StdN", "Hiragino Mincho StdN", "HiraMinProN-W3", " HGS明朝B", "HG明朝B", "Helvetica Neue", "Helvetica", "Arial", "ヒラギノ角ゴ Pr6N", "Hiragino Kaku Gothic Pr6N", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ StdN", "Hiragino Kaku Gothic StdN", "Segoe UI", "Verdana", "メイリオ", "Meiryo", sans-serif;」などのような感じに成っているからです。

 (実際は、一部が文字化けしている画面が有ったり、引用符も有ったり無かったりしていました……。)

 そのため、「游明朝」フォントが存在するWindowsや、「ヒラギノ明朝 Pr6N」フォントが存在するMacで、「カクヨム」を閲覧した場合は、不具合は発生しない、と思います。

 実際、ウェブ検索しても、そのような不具合の情報は見つかりませんでした。

 「カクヨム」に、Linuxに存在する可能性が高い日本語対応フォントをCSSのfont-familyに最高優先度で先頭のほうに設定して欲しいですが、Linuxは利用者が比較的、少ないので、Linux対応してもらえる可能性は低いかもしれません。


 ちなみに、「英語と日本語で違うフォントにして英語を綺麗に表示したい」というデザイン的な「こだわり」が有る場合は、日本語非対応フォント、日本語対応フォント、総称フォントという順番でCSSのfont-familyを設定するそうです。

 しかし、特に、デザイン的な「こだわり」が無ければ、日本の小説投稿サイトのように日本語がメインの場合は、日本語対応フォント、総称フォントという順番でCSSのfont-familyを設定して欲しい、と個人的に思ってしまいます。

 「小説家になろう」のように。

  • Twitterで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る