私ならwin32apiを使います。
一見ごちゃごちゃしていますが、速いのと、何より余計なバッファを使わなくてよいのが楽です。
	#uselib "gdi32.dll"
		#cfunc CreateFont "CreateFontA" int, nullptr, int, int, nullptr, nullptr, nullptr, nullptr, int, nullptr, nullptr, nullptr, nullptr, str
		#func DeleteObject "DeleteObject" int
		#func SelectObject "SelectObject" int,int
		#func SetGraphicsMode "SetGraphicsMode" int, int
	#define ctype deg2ori(%1) %1*10
	SetGraphicsMode hDC, 2
	
	rad = deg2ori(-45)
	hFont = CreateFont(20, rad, rad, 128/*shift-jis*/, "MS ゴシック")
	SelectObject hDC, hFont
	pos 100, 200 : mes "これはテストです。"		// OK
	pos 200, 200 : mes "这是一个测试。"			// Shift-JISだけ
	
	rad = deg2ori(45)
	hFont = CreateFont(20, rad, rad, 128, "MS ゴシック")
	SelectObject hDC, hFont
	color 255
	pos 300, 200 : mes "This is a test."		// OK
	
	redraw 1	; 領域外も描画[重要]
	
	DeleteObject hFont
stop
あとは適当にモジュール化すれば簡単でしょう。