今晩は、いつもお世話になっております。
Dxアーカイブからttfやotfファイルを読み込みたいのですが、
下のサイトを参考に(まるパクリして)みたのですがうまくいきませんでした(エラー処理に入ってしまう)
一度止めて変数を確認してみましたが、ぱっと見変数の数がおかしかったりはしていませんでした。
以前はAddFontResourceExを使っていたので、パスに間違いはないと思われます
joynote.hatenadiary.org/entry/20100709/1278708168
推測できる原因、別のやり方等ありましたら教えていただけると嬉しいですm(__)m
int FontFileSize = FileRead_size("Font\\aoyagireisyosimo_2_01.ttf");
// フォントファイルを開く
int FontFileHandle = FileRead_open("Font\\aoyagireisyosimo_2_01.ttf");
// フォントデータ格納用のメモリ領域を確保
void* Buffer = new void*[FontFileSize];
// フォントファイルを丸ごとメモリに読み込む
FileRead_read(Buffer, FontFileSize, FontFileHandle);
// AddFontMemResourceEx引数用
DWORD font_num = 0;
// メモリに読み込んだフォントデータをシステムに追加
if (AddFontMemResourceEx(Buffer, FontFileSize, NULL, &font_num) == 0)
{
ERR_GL("フォントデータの読み込みに失敗しました");
return;
}
FileRead_close(FontFileHandle);
delete[] Buffer;
(勝手にnewに書き換えたところは正しい書き方かわかりませんが、元のソースそのままでも結果は変わりませんでした)