Metadata-Version: 2.4
Name: japanize-kivy
Version: 0.2.0
Summary: japanize kivy
Author: momijiame
License-Expression: Apache-2.0
Project-URL: Homepage, https://github.com/momijiame/japanize-kivy
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: Operating System :: Unix
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: kivy
Provides-Extra: dev
Requires-Dist: pytest; extra == "dev"
Requires-Dist: ruff; extra == "dev"
Dynamic: license-file

# japanize-kivy

[![test](https://github.com/momijiame/japanize-kivy/actions/workflows/test.yml/badge.svg)](https://github.com/momijiame/japanize-kivy/actions/workflows/test.yml)

インポートするだけで Kivy が日本語を表示できるようになります

### インストール

pip でインストールします。

```sh
$ pip install japanize-kivy
```

### 使い方

パッケージをインポートするだけです。

```python
import japanize_kivy
```

Kivy のアプリケーションで日本語が IPAex ゴシックフォントで表示されます。

### フォントを差し替える

自分で用意したフォントを使いたいときは `japanize()` にパスを渡します。

```python
import japanize_kivy

japanize_kivy.japanize("~/fonts/NotoSansJP-Regular.ttf")
```

太字や斜体に別のファイルを使う場合は、あわせて指定します。

```python
japanize_kivy.japanize(
    "~/fonts/NotoSansJP-Regular.ttf",
    bold="~/fonts/NotoSansJP-Bold.ttf",
)
```

`name` を指定すると別名で登録されるので、特定のウィジェットにだけ使えます。
同梱の IPAex ゴシックは `japanize_kivy.BUNDLED_FONT_NAME` の名前で引けるため、差し替えても併用できます。

```python
name = japanize_kivy.japanize("~/fonts/Mincho.ttf", name="mincho")

Label(text="見出し", font_name=name)
Label(text="本文", font_name=japanize_kivy.BUNDLED_FONT_NAME)
```

コードを変えずに差し替えたいときは、環境変数 `JAPANIZE_KIVY_FONT` にパスを指定します。

```sh
$ JAPANIZE_KIVY_FONT=~/fonts/NotoSansJP-Regular.ttf python app.py
```

フォントは 引数 > 環境変数 > 同梱の IPAex ゴシック の順に優先されます。
指定したフォントを使えないときは、別のフォントで代替せずにエラーになります。

なお、フォントはウィジェットを作る前に決めてください。
登録し直しても、生成済みのウィジェットはすぐには新しいフォントになりません。
再描画された時点で切り替わるため、新旧のフォントが混在した状態になります。

### サンプル

example ディレクトリ以下にサンプルがあります。

```sh
$ python example/greet.py
```

### ライセンス

このパッケージは IPAex ゴシックフォントを同梱して再配布しているため、
表示に使うフォントを差し替えたかどうかにかかわらず、そのライセンスに同意してください。
自分で用意したフォントに差し替えた場合は、あわせてそのフォントのライセンスにも従ってください。

同梱しているフォントのライセンスは次のように確認できます。

```python
import japanize_kivy

japanize_kivy.show_license()
```
