> dftファイルをアーカイブした場合、プログラムで何か足りないものがあるか、
> それとも別の方法を使用しないとなのでしょうか。
いえ、特にdftファイルのみ特別な処理を行わなければならないといったことはありません
手元で data\font\FONT10.dft 〜 data\font\FONT32.dft を格納した data.dxa ファイルを
作成して、以下のプログラムを実行してみましたが、全てのサイズのフォントが正常に
読み込まれ、画面に表示されました
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow )
{
int font10, font12, font14, font16 ;
int font18, font20, font22, font24 ;
int font26, font28, font30, font32 ;
// ウインドウモードで起動
ChangeWindowMode( TRUE ) ;
// DXライブラリの初期化
if( DxLib_Init() < 0 ) return -1 ;
SetUseDXArchiveFlag( TRUE );
// フォントファイルの読み込み
font10 = LoadFontDataToHandle( "data\\font\\FONT10.dft" , 0 );
font12 = LoadFontDataToHandle( "data\\font\\FONT12.dft" , 0 );
font14 = LoadFontDataToHandle( "data\\font\\FONT14.dft" , 0 );
font16 = LoadFontDataToHandle( "data\\font\\FONT16.dft" , 0 );
font18 = LoadFontDataToHandle( "data\\font\\FONT18.dft" , 0 );
font20 = LoadFontDataToHandle( "data\\font\\FONT20.dft" , 0 );
font22 = LoadFontDataToHandle( "data\\font\\FONT22.dft" , 0 );
font24 = LoadFontDataToHandle( "data\\font\\FONT24.dft" , 0 );
font26 = LoadFontDataToHandle( "data\\font\\FONT26.dft" , 0 );
font28 = LoadFontDataToHandle( "data\\font\\FONT28.dft" , 0 );
font30 = LoadFontDataToHandle( "data\\font\\FONT30.dft" , 0 );
font32 = LoadFontDataToHandle( "data\\font\\FONT32.dft" , 0 );
// 描画先を裏画面にする
SetDrawScreen( DX_SCREEN_BACK ) ;
// メインループ
while( ProcessMessage() == 0 )
{
// 画面のクリア
ClearDrawScreen() ;
// フォントの描画
DrawStringToHandle( 0, 0, "ABCD", GetColor( 255,255,255 ), font10 ) ;
DrawStringToHandle( 0, 10, "ABCD", GetColor( 255,255,255 ), font12 ) ;
DrawStringToHandle( 0, 22, "ABCD", GetColor( 255,255,255 ), font14 ) ;
DrawStringToHandle( 0, 36, "ABCD", GetColor( 255,255,255 ), font16 ) ;
DrawStringToHandle( 0, 52, "ABCD", GetColor( 255,255,255 ), font18 ) ;
DrawStringToHandle( 0, 70, "ABCD", GetColor( 255,255,255 ), font20 ) ;
DrawStringToHandle( 0, 90, "ABCD", GetColor( 255,255,255 ), font22 ) ;
DrawStringToHandle( 0, 112, "ABCD", GetColor( 255,255,255 ), font24 ) ;
DrawStringToHandle( 0, 136, "ABCD", GetColor( 255,255,255 ), font26 ) ;
DrawStringToHandle( 0, 162, "ABCD", GetColor( 255,255,255 ), font28 ) ;
DrawStringToHandle( 0, 190, "ABCD", GetColor( 255,255,255 ), font30 ) ;
DrawStringToHandle( 0, 220, "ABCD", GetColor( 255,255,255 ), font32 ) ;
// 裏画面の内容を表画面に反映
ScreenFlip() ;
}
// DXライブラリの後始末
DxLib_End() ;
// ソフトの終了
return 0 ;
}
最新のDXライブラリでは正常に動作するかもしれませんので、
よろしければこちらの暫定最新バージョンをお試しになってみてください m(_ _)m
https://dxlib.xsrv.jp/temp/DxLibVCTest.zip // Windows版 VisualC++ 用
https://dxlib.xsrv.jp/temp/DxLibBCCTest.zip // Windows版 BorlandC++ 用
https://dxlib.xsrv.jp/temp/DxLibBCC2Test.zip // Windows版 C++ Builder 10.3 用
https://dxlib.xsrv.jp/temp/DxLibGCC_MinGWTest.zip // Windows版 MinGW 用
https://dxlib.xsrv.jp/temp/DxLibDotNet.zip // Windows版 .NET用
https://dxlib.xsrv.jp/temp/DxLibMakeTest.zip // ソース
(中身を既存のライブラリのファイルに上書きして『リビルド』をして下さい)