リファレンスには載っていないのですが、DrawExtendStringToHandle関数やDrawExtendFormatStringToHandle関数で文字の大きさを変えて描画できます。
一番大きく描画するサイズでフォントハンドルを作成しておいて、描画モードをバイリニア法に設定して縮小描画するのが見た目が綺麗だと思います。
(大きくなった時に多少ボケてもいいなら普通サイズで作って拡大するのもありです)
↓関数の詳細
フォントハンドルを使用して文字列を拡大描画する
int DrawExtendStringToHandle( int x, int y, double ExRateX, double ExRateY, const TCHAR *String, int Color, int FontHandle, int EdgeColor = 0 , int VerticalFlag = FALSE ) ;//
フォントハンドルを使用して書式指定文字列を拡大描画する
int DrawExtendFormatStringToHandle( int x, int y, double ExRateX, double ExRateY, int Color, int FontHandle, const TCHAR *FormatString, ... ) ;//
↓サンプル
#include "DxLib.h"
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
ChangeWindowMode(TRUE);
SetGraphMode(640, 480, 32);
if (DxLib_Init() == -1)return -1;
double Scale = 0.2;
bool Reflag = false;
//フォントを大きめに作成
int FontH = CreateFontToHandle("MS ゴシック", 100, 4 , DX_FONTTYPE_ANTIALIASING_4X4);
SetDrawScreen(DX_SCREEN_BACK);
//バイリニア法で描画する
SetDrawMode(DX_DRAWMODE_BILINEAR);
//メインループ
while (!ProcessMessage())
{
//スケールリピート
if (Reflag) {
Scale -= 0.01;
if (Scale < 0.2)Reflag = false;
}
else {
Scale += 0.01;
if (Scale > 2.0)Reflag = true;
}
//描画
ClearDrawScreen();
DrawExtendStringToHandle(16,16, Scale, Scale,"文字を動的に拡大縮小する",0xffffff, FontH);
ScreenFlip();
}
DxLib_End();
return 0;
}