プログラミング言語や環境設定を中心としたパソコン関連の技術メモです。
主にシステム開発中に調べたことをメモしています。TIPS的な位置付けで、気が向いたときにちまちま更新していきます。
Processing 3、textSize()を指定したら日本語が文字化けした
結論から書くと

PFont font = createFont("Yu Gothic",48,true);
textFont(font);

とかやって、フォントを動的に作成して?設定したら?私の環境では良い感じになりました。
細かい理屈はサッパリ分かりませんけどねq(--)p

それでは詳細を書いていきます。

まずは、こんな処理を書きましたφ(--)

size(500,200);
background(255);

fill(0);
text("ピヨピヨ(-Σ-)", 10, height/2);

動かしたら、こんな感じで表示されましたφ(--)

20180219-01.png


次に文字を大きくしようと思ってtextSize()を指定しました。
処理は、こんなんですφ(--)

size(500,200);
background(255);

textSize(32);

fill(0);
text("ピヨピヨ(-Σ-)", 10, height/2);

そうしたら、こんな風に表示されましたφ(--)

20180219-02.png


大きくはなったけど日本語が文字化けってやがる(-A-)

日本語が全部「□」になってしまいましたとさ。
きっと、対応するフォントがないとか読み込めないとか、そんなんでしょうね。

ほんで、あれやこれやと試したところ、こんな風にすればφ(--)

size(500,200);
background(255);

PFont font = createFont("Yu Gothic",64,true);
textFont(font);


textSize(32);

fill(0);
text("ピヨピヨ(-Σ-)", 10, height/2);

文字化けしないで、こんな風に表示されましたφ(--)

20180219-03.png


細かい理屈は私も分かっていませんが、
日本語フォントを動的に生成し直して設定してあげると
textSize()を指定しても日本語が文字化けしなくなるっぽいです。

ちなみに私の環境では、なぜか存在しないフォントを指定しても良い感じになりました。

こんな感じで存在しないフォントを指定したのにφ(--)

size(500,200);
background(255);

PFont font = createFont("PiyoPiyoFont",64,true);
textFont(font);

textSize(32);

fill(0);
text("ピヨピヨ(-Σ-)", 10, height/2);

文字化けしないで表示されましたφ(--)

20180219-04.png


なんで(--?
存在しないフォントを指定したら特定のフォントを使うようになっていたりするのですかね。
分からんq(--)p

……けど、とりあえず良い感じに表示されたので完了\(--)/
スポンサーリンク
 
このエントリーをはてなブックマークに追加 

category:Processing  thema:パソコンな日々 - genre:コンピュータ  Posted by ササキマコト 

  関連記事