【Raspberry Pi】Scratch 2.0での漢字が正しく表示されるようにする

前回の記事ではシステムフォントをNotoに変更しました。

【Raspberry Pi】PixelのシステムフォントをNotoに変更する
ブログのコメントで教えてもらうまで気づきませんでしたが、Raspbian Jessie with Pixelの標準の日本語フォントはいわゆる中華フォントというフォントが使われています。使用にあたってはほぼ問題ないレベルなのですが、特定の漢字...

これで、OS自体が表示するフォントが正しい日本語フォントになりました。ですが、Flashプラグインで動くScratchのフォントはおかしな日本語フォントのまま。今回はそれを解決します

【Raspberry Pi】Scratch 2.0の漢字が正しく表示されるようにする

こちらの記事を参考にさせていただきました
Linux での Youtube 再生時の文字化け対策

Flashではシステムの設定でSans(sans-serif)に指定されたフォントが使われるようなので、Sansに正しい日本語フォントが設定されるように変更したいと思います

【Raspberry Pi】Scratch 2.0の漢字が正しく表示されるようにする

そのために「69-language-selector-ja-jp.conf」というファイルを作成します

ファイルを~/Documentsにつくります
内容はこんな感じ

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
    <!-- Japanese (ja) -->
    <match target="pattern">
        <test qual="any" name="family">
            <string>sans-serif</string>
        </test>
        <edit name="family" mode="prepend" binding="strong">
            <string>Noto Sans CJK JP</string>
        </edit>
    </match>

    <!--match target="pattern">
        <test qual="any" name="family">
            <string>serif</string>
        </test>
        <edit name="family" mode="prepend" binding="strong">
            <string>Noto Sans CJK JP</string>
        </edit>
    </match-->

    <!--match target="pattern">
        <test qual="any" name="family">
            <string>monospace</string>
        </test>
        <edit name="family" mode="prepend" binding="strong">
            <string>Noto Sans CJK JP</string>
        </edit>
    </match-->

    <!--match target="pattern">
        <test qual="any" name="family">
            <string>Ryumin</string>
        </test>
        <edit name="family" mode="prepend" binding="strong">
            <string>Noto Sans CJK JP</string>
        </edit>
    </match-->

    <!--match target="pattern">
        <test qual="any" name="family">
            <string>GothicBBB</string>
        </test>
        <edit name="family" mode="prepend" binding="strong">
            <string>Noto Sans CJK JP</string>
        </edit>
    </match-->

    <match target="font">
        <test name="family" compare="contains">
            <string>Noto Sans CJK JP</string>
        </test>
        <test name="pixelsize" compare="less_eq">
            <double>18</double>
        </test>
        <edit name="hintstyle" mode="assign">
            <const>hintnone</const>
        </edit>
        <edit name="embeddedbitmap">
             <bool>false</bool>
        </edit>
    </match>
    <!-- Japanese (ja) ends -->
</fontconfig>

Flashでのフォントを変更したい場合は必要なさそうなので、serif(明朝)、monospace(等幅)、Ryumin(明朝)、GothicBBB(ゴシック)はコメントアウトしていますが、指定したい場合はコメントを外して自分が使いたいフォントを指定してください。

実際指定しているのはこれだけ。(このファイルでも問題無いです)

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
    <!-- Japanese (ja) -->
    <match target="pattern">
        <test qual="any" name="family">
            <string>sans-serif</string>
        </test>
        <edit name="family" mode="prepend" binding="strong">
            <string>Noto Sans CJK JP</string>
        </edit>
    </match>

    <match target="font">
        <test name="family" compare="contains">
            <string>Noto Sans CJK JP</string>
        </test>
        <test name="pixelsize" compare="less_eq">
            <double>18</double>
        </test>
        <edit name="hintstyle" mode="assign">
            <const>hintnone</const>
        </edit>
        <edit name="embeddedbitmap">
             <bool>false</bool>
        </edit>
    </match>
    <!-- Japanese (ja) ends -->
</fontconfig>

いろんなフォントを追加したい場合は、こっちの設定ファイルが参考になると思います
69-language-selector-ja-jp.conf

作成したファイルを/etc/fonts/conf.avail/にコピーして、/etc/fonts/conf.avail/にシンボリックリンクを作成をします

cd ~/Documents
sudo cp 69-language-selector-ja-jp.conf /etc/fonts/conf.avail/69-language-selector-ja-jp.conf 
sudo ln -s /etc/fonts/conf.avail/69-language-selector-ja-jp.conf /etc/fonts/conf.d/

システムを再起動します

これでFlashで使われるフォントが変更されると思います

【Raspberry Pi】Scratch 2.0の漢字が正しく表示されるようにする

ちなみに、この設定ファイルを作成すると前回の記事で変更したシステムフォントやブラウザのフォントはデフォルトに戻してしまっても問題ありません

【Raspberry Pi】PixelのシステムフォントをNotoに変更する
ブログのコメントで教えてもらうまで気づきませんでしたが、Raspbian Jessie with Pixelの標準の日本語フォントはいわゆる中華フォントというフォントが使われています。使用にあたってはほぼ問題ないレベルなのですが、特定の漢字...

以下は、システムフォントを変更してしまった人向けの手順です

システムフォントをデフォルトのRobotoに戻します

【Raspberry Pi】Scratch 2.0の漢字が正しく表示されるようにする

ChromeのフォントもデフォルトのDejajaVu Sansに戻します

【Raspberry Pi】Scratch 2.0の漢字が正しく表示されるようにする

これでおしまいです

タイトルとURLをコピーしました