xterm supports these but xterm.js does not.
#!/bin/sh
msg="Hello world!"
clear
printf "\e[1;1H" # move to line 1, col 1
printf "\e#3${msg}" # top-half of the message
printf "\e[2;1H" # move to line 2, col 1
printf "\e#4${msg}" # bottom-half of the message
printf "\e[3;1H" # move to line 3, col 1
printf "\e#6${msg}" # double-width message
printf "\e[4;1H" # move to line 3, col 1
printf "${msg}\n" # just a normal text