Waveshare epaper / e-ink [EPS32モジュール]用の新しいフォントを作成するPythonスクリプト
WaveshareからのE-Inkディスプレイに非常に満足していますが、ライブラリは基本的なフォントタイプのみを提供し、5つのフォントサイズ(Font8、Font12、Font16、Font20、Font24のみ)のみを提供しています。これは残念ながら非常に制限です:(
このPythonスクリプトは、Waveshare BlogPostこれに触発されています。しかし、彼らは使用するコードを提供していません...
一方、Dominik Kapustaのfont2bytesは利用可能ですが、C ++コンパイラが必要です。
これは私のバージョンでPythonで作られています。現時点では、ASCIIキャラクターのみを再現しますが、任意のフォントを使用して任意のサイズを指定できます。 (Epaperディスプレイに合うようにしてください)
font2bytes.py内の./fontsフォルダー内に使用する(.tff)を使用するフォントをドロップします
作成するフォントの新しい名前を指定します
使用するフォント名を指定します(デフォルトはRoboto-Regularです)
新しいフォントの高さと幅を指定します。
Pythonスクリプトを実行します
Pythonスクリプトは、目的の名前を持つ./Outputフォルダー内に新しい.cppファイルを生成します
Waveshare Libraryソースフォルダー内(Arduino brisharies esp32-waveshare-epd src)
新しい.cppフォントファイルを追加します
fonts.hを開きます
新しいフォントの名前で新しい「extern」行を追加する
例:extern sfont fontbold40;
[オプション]定義されたmax_height_fontおよびmax_width_fontが、新しいフォントサイズと等しいか小さいことを確認してください。必要に応じて値を更新します
スクリプトで新しいフォントを使用して楽しんでください!
Eg paint_drawstring_en(5、0、 "Waveshare Electronics"、&fontbold40、black、white);
./Outputフォルダー内には、Oytyonコードを実行せずに使用できる.cppファイルがいくつかあります。 6番目のステップの指示に従ってください
TheHexStyle
LGPL v3.0、詳細についてはライセンスを参照してください。