SSブログ

OSMC Font入替え(真打!?) [Raspberry Pi]

え?またOSMCネタなの。。。 しかも,Fontネタって。。。

大概ですね… またFontネタ。 実は,別件の副産物的なにか。。。
でも,今度の方法は,いつもとは一味違います。(多分…)

あぁ,そうそう。
先日,OSMCの自ビルドに使っていたSDカード,やっぱり,逝ってました orz
部分的にダメになっているのが,始末悪い。
やっぱり,SDカード上で,自ビルドなんてやっちゃダメですね(笑


で,何が違うかって,Font.xmlを編集しない!
と,言うことは,Updateに強い!(影響を受けない)

一部,例外(リネーム作業)は,ありますが,こっちの方法が本来の方法の様です。

ご参考: HOW-TO:Add a new true type font to the skin - Official Kodi Wiki

skin.osmcは,Fontで"Arial"を選ぶと~/.kodi/media/Fonts以下の代替えフォントを使うようになります。
厳密には…

  1. ~/.kodi/media/Fonts/arial.ttf
  2. /usr/share/kodi/media/Fonts/arial.ttf

の順番のよう…

ただし,fontset "Arial"の"SystemInfo"に定義されているフォント LiberationMono-Regular.ttf は,skin.osmc内蔵(/usr/share/kodi/addons/skin.osmc/fonts/)の為,いくら~/.kodi/media/Fonts/以下に代替えフォントを置いても機能してくれない orz

従って,SystemInfo部分は,Font.xmlの書き換え必須!

でしたが…
skin.osmc内蔵のフォントをリネームして,~/.kodi/media/Fonts/の物を採用するように仕向けます。
ついでに,代替えフォントは,分かり易いように,シンボリックリンクを使っていきます。


一つ一つ手作業では,面倒なので,やっつけスクリプトを用意しました。
何やってるかは,スクリプトをご覧下さい。(大した事してません)

ファイルの配置

  • /home/osmc/
    • _setup/
      • fonts.sh
      • migu-1c-regular.ttf ...一般表示のフォント
      • mplus-1m-regular.ttf ...SystemInfoのフォント

_setupは,適当に付けてください。
スクリプトと代替えフォントを同じ階層に設置します。
ファイルの設置は,OSMCにSamba Serverをインストールして,そこで行った方が楽です。
Samba Serverのインストールは,MyOSMC →App Store(ショッピングカードのアイコン)で,Samba(SMB) Serverを選び,Install,右下でApplyを選びますと,ダウンロードインストールしてくれます。


やっつけスクリプトはこんな感じ…
fonts.sh


実行結果

osmc@osmc:~$ cd _setup
osmc@osmc:~/_setup$ ./fonts.sh migu-1c-regular.ttf mplus-1m-regular.ttf
osmc@osmc:~/_setup$ ls -l /home/osmc/.kodi/media/Fonts/
合計 9408
-rw-r--r-- 1 osmc osmc 4641248  3月  1 12:52 DejaVu_Sans.ttf
lrwxrwxrwx 1 osmc osmc      49  3月  1 12:52 LiberationMono-Regular.ttf -> /home/osmc/.kodi/media/Fonts/mplus-1m-regular.ttf
lrwxrwxrwx 1 osmc osmc      48  3月  1 13:49 arial.ttf -> /home/osmc/.kodi/media/Fonts/migu-1c-regular.ttf
-rw-r--r-- 1 osmc osmc 3235600  3月  1 13:49 migu-1c-regular.ttf
-rw-r--r-- 1 osmc osmc 1644348  3月  1 13:49 mplus-1m-regular.ttf
lrwxrwxrwx 1 osmc osmc      49  3月  1 13:49 teletext.ttf -> /home/osmc/.kodi/media/Fonts/mplus-1m-regular.ttf
-rw-r--r-- 1 osmc osmc  105344  3月  1 12:52 teletext2.ttf
osmc@osmc:~/_setup$ sudo reboot

フォントをシンボリックリンクにしたお陰で,今使っているフォントが一目瞭然。
ここでは,arial.ttfとLiberationMono-Regular.ttfの他,teletext.ttfも用意しています。
運良く他のskinでも対応していれば,arial.ttfとteletext.ttfが使われます。

この方法の利点は

  • Font.xmlなどの編集が要らない
  • Updateが有っても影響を受けない。
    (ただし,内蔵のLiberationMono-Regular.ttfのリネームは必要)

長くOSMCを使うなら,こちらの方が有用と思います。


おまけ: skin.osmc 微改造(PS3っぽく)

ネタを出してなかったので,ついでにここで。
全部だと大量になるので,Diffったネタっぽい物で,ご容赦を。

Hint:
  • Font.xmlは,オリジナルな物を対象にしていますが,SystemInfoのフォント変更のみ(ファイルの行数が変わっていない)なら,当てても大丈夫です。
  • この改造は,Updateが入ると,元に戻ってしまいます。

Font.xml.patch

--- /usr/share/kodi/addons/skin.osmc/16x9/Font.xml.orig 2019-01-03 15:55:49.879999988 +0900 +++ /usr/share/kodi/addons/skin.osmc/16x9/Font.xml 2019-03-01 16:18:22.295169448 +0900 @@ -420,6 +420,24 @@ <size>19</size> </font> + <!-- for Datetime --> + <font> + <name>Font55</name> + <filename>Arial.ttf</filename> + <size>55</size> + <style>bold</style> + </font> + <font> + <name>Font54</name> + <filename>Arial.ttf</filename> + <size>55</size> + </font> + <font> + <name>font12</name> + <filename>Arial.ttf</filename> + <size>17</size> + </font> + </fontset> -</fonts> \ ファイル末尾に改行がありません +</fonts>

fonts.sh

--- /usr/share/kodi/addons/skin.osmc/16x9/Viewtype50.xml.orig 2018-12-22 18:27:35.000000000 +0900 +++ /usr/share/kodi/addons/skin.osmc/16x9/Viewtype50.xml 2019-03-01 16:26:18.686248298 +0900 @@ -49,11 +49,22 @@ <left>32</left> <top>0</top> <width>1018</width> - <height>60</height> + <height>40</height> <font>Font36</font> <label>[LIGHT]$INFO[ListItem.Label][/LIGHT]</label> <textcolor>TextColor2</textcolor> </control> + <!-- Datetime w Duration mmm --> + <control type="label"> + <left>32</left> + <top>35</top> + <width>1018</width> + <height>20</height> + <font>Font13</font> + <label>[LIGHT]$INFO[ListItem.Date] $INFO[ListItem.StartTime(hh:mm)] $VAR[Duration][/LIGHT]</label> + <textcolor>TextColor2</textcolor> + <visible>!ListItem.IsFolder</visible> + </control> <!-- Watched status --> <control type="image"> <left>0</left> @@ -71,13 +82,26 @@ <left>32</left> <top>0</top> <width>1018</width> - <height>120</height> - <font>Font73</font> + <height>102</height> + <font>Font55</font> <label>$INFO[ListItem.Label]</label> <textcolor>TextColor1</textcolor> <scroll>True</scroll> <animation effect="fade" start="100" end="50" time="200" tween="cubic" easing="out" reversible="true" condition="!Control.HasFocus(50)">Conditional</animation> </control> + <!-- Datetime w Duration mmm --> + <control type="label"> + <left>32</left> + <top>42</top> + <width>1018</width> + <height>102</height> + <font>Font27-Light</font> + <label>$INFO[ListItem.Date] $INFO[ListItem.StartTime(hh:mm)] $VAR[Duration]</label> + <textcolor>TextColor1</textcolor> + <scroll>True</scroll> + <animation effect="fade" start="100" end="50" time="200" tween="cubic" easing="out" reversible="true" condition="!Control.HasFocus(50)">Conditional</animation> + <visible>!ListItem.IsFolder</visible> + </control> <control type="image"> <left>32</left> <top>0</top>

以下 (patchコマンドを入れるので…)自己責任で…

ファイルのBackup
$ cp -p /usr/share/kodi/addons/skin.osmc/16x9/Font.xml /usr/share/kodi/addons/skin.osmc/16x9/Font.xml.orig
$ cp -p /usr/share/kodi/addons/skin.osmc/16x9/Viewtype50.xml /usr/share/kodi/addons/skin.osmc/16x9/Viewtype50.xml.orig

OSMCってpatchが入っていないので,入れる。
$ sudo apt install patch -y

$ patch < Font.xml.patch
$ patch < Viewtype50.xml.patch

$ sudo systemctl restart mediacenter

タグ:ラズパイ OSMC
コメント(0) 
共通テーマ:趣味・カルチャー

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。