I appreciate the sample code -- many thanks. In the meantime, I found a workaround that supports writing ANSI colorful text to the console in both Windows Terminal and Windows Console Host. The trick is to save the text to a temp file and then type the file.
#include <File.au3>
#include <FileConstants.au3>
#include <Process.au3>
Func _ConsoleWriteANSI($sTxt, $iFg1 = 33, $iBg1 = 1, $iFg0 = 22, $iBg0 = 0)
; Write colorful text to the console ("TYPE tmp_file" method)
; Default color - Bright Yellow on Black background
Local $h, $sTmpFn = _TempFile(@ScriptDir)
$h = FileOpen($sTmpFn, $FO_BINARY + $FO_OVERWRITE)
If $h < 0 Then Return ConsoleWrite($sTxt)
If Not FileWrite($h, Chr(27) & "[" & $iFg1 & "m" & Chr(27) & _
"[" & $iBg1 & "m" & $sTxt & Chr(27) & "[" & $iFg0 & "m" & _
Chr(27) & "[" & $iBg0 & "m") Then
FileClose($h)
Return ConsoleWrite($sTxt)
EndIf
FileClose($h)
_RunDos("type " & $sTmpFn)
FileDelete($sTmpFn)
EndFunc ;==>_ConsoleWriteANSI