3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

昨日の続き kivy

Last updated at Posted at 2017-05-15

注意書き:
日本語表示するために、うまくいかず調べてたらすっきりする方法が見つかりました。下の方に、自分が調べた限り少ない記述でのやり方を書いてますが、記録としてめんどくさいやり方も残しておきますw

※読み返してみたらすぐ下に書いてあるコードがめんどくさいみたいにとれる感じがしたので書き直してます。
自分のめんどくさいやり方というのは
kvファイルのLabelに1個ずつ font_name: ~ を
書くやり方ですw(追加する部分が3つしかないので、気付くまでそれで対処しようとしてた)


ここからが本題

from kivy.core.text import LabelBase, DEFAULT_FONT
from kivy.resources import resource_add_path

resource_add_path('./fonts')
LabelBase.register(DEFAULT_FONT, 'mplus-2c-regular.ttf') 

記事通りならこれでとおるはずなんだが、自分の環境のせいなのか通らない。

記述が間違ってないかも確認したし、全コピペでもだめだった。
ttfファイルを置いた階層も間違ってないはずなのに・・・

対処法:
KvファイルのLableに
font_name: "HGRPP1.TTC"
これをはっつけた。

このファイルは自分の場合(Windows10)
CドライブのWindow/fonts の中からコピーして持ってきた

置いた場所は
main.py
test.kv
HGRPP1.TTC
と、いう感じ。

まだ枠数が少ないから4か所程度で済んだけど、大きいプログラムを作るときが来た場合のために、勉強しながら探していこう。。

ちなみに結果はこんな感じ。

bandicam 2017-05-16 03-11-37-001.jpg

bandicam 2017-05-16 03-11-42-362.jpg

bandicam 2017-05-16 03-11-45-773.jpg

bandicam 2017-05-16 03-11-48-089.jpg

なんとか日本語表示をすることは出来た。
補足:
このやり方だとこの記事の上の方に書いてあるコードはいらないです。

さっき調べたときに
:
font_name: "HGRPP1.TTC"

っていうふうに書くってのがあったんだけど、なんで出来ないんだろうって思ってたらインデントをミスってただけでしたw

最終的に日本語表示するときはこのやり方にしましたw

TextWidget:
<Label>:
    font_name: "HGRPP1.TTC"

<MyButton@Button>:
    font_sise: 68

<TextWidget>:
    BoxLayout:
        orientation: 'vertical'
        size: root.size

        # ラベル
        Label:
            size_hint_y: 0.7
            id: label1
            font_size: 68
            text: root.text
            color: root.color
        
        BoxLayout:
            size_hint_y: 0.3
            padding: 20,30,20,10
            Button:
                id: button1
                text: "朝"
                font_size: 68
                on_press: root.buttonCliked()

            Button:
                id: button2
                text: "昼"
                font_size: 68
                on_press: root.buttonCliked2()

            Button:
                id: button3
                text: "夜"
                font_size: 68
                on_press: root.buttonCliked3()

pyファイル(メインのファイル)と同じ場所に
紹介されていた記事の
mplus-2c-regular.ttfというファイルも配置すればちゃんと読み込んでくれました。

こんなかんじで。

bandicam 2017-05-16 03-34-48-117.jpg

ただ今後、音楽や画像などを使ったりするときはごちゃごちゃするのでsoundフォルダやimageフォルダ, fontsフォルダなどを作り
font_name: "./fonts/mplus-2m-medium.ttf"
と書いた方がフォルダの中がスッキリします。
(kvファイルの方にパス指定するとうまくいくんだよなぁ。。)

まぁこのやり方が記述短いしいっか!

そして現在17のところ!

起動時orサンプル1クリック時に同じ画像らしいんだけど、
起動時だと真っ白なんだよねえ・・

ボタンを押すと画像が切り替わる機能はちゃんと動いてるのになんでだろー。


2017/5/16
追記:
記事の作成者様から元記事の補足と訂正のコメントをいただきました。
解決しました!

ありがとうございます!

3
1
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?