FontAsset に フォントファイルを登録 反映されない?
整数 緑  2015/11/16(Mon) 02:12
初めまして、Siv3Dでいろいろやってみています。
おかげさまで、充実した日々を送っております。

さて、質問の内容は件名の通りです。

# include <Siv3D.hpp>

void Main()
{

FontAsset::Register(L"よもぎフォント", 10, L"Example/YomogiFont.ttf");

while ( System::Update() )
{
FontAsset(L"よもぎフォント").draw(L"反映されないのでしょうか?",0, 120, Palette::White, 1.0);
}
}

このような、プログラムを組んでみたところ
フォントファイルは読み込めているようなのですが、
そのフォントが文字描画に反映されませんでした。

どのような書き方なら反映されるのでしょう?

教えていただければ幸いです。

もしリファレンスのどこかに書いていたりもう答えが出ているところがあれば
お手数ですがリンクをお願いします。
Reputeless  2015/11/17(Tue) 00:02
システムにインストールされていないフォントを使用するには FontManager を使ったフォントファイルの登録が必要です。
参考)「フォントファイルを登録する」http://play-siv3d.hateblo.jp/entry/tutorial/drawFont
フォントアセットの登録とは別に行わなければならないので注意してください。

また、FontAsset::Register() の第 3 引数にはフォントの正式名称を指定します。
以上のことを踏まえて修正すると以下の通りになります。

# include <Siv3D.hpp>

void Main()
{
FontManager::Register(L"Example/YomogiFont.ttf");

FontAsset::Register(L"font", 30, L"よもぎフォント");

while (System::Update())
{
FontAsset(L"font")(L"反映されます!").draw(0, 120, Palette::White);
}
}
整数 緑  2015/11/17(Tue) 00:38
ありがとうございます!!
これで充実した日々がまた送れそうです。

また何か質問が出てきたときはお世話になります。

- WEB PATIO -