Не существует современных принтеров, которые выполняют печать через COM-порт, даже большинство старых принтеров используют параллельные (Centronics) порты SPP или EPP. Единственные COM-принтеры, которые я помню, были 40-летней давности типа «терминал» с головками типа гирлянд или печатными машинками IBM. Возможно, некоторые POS-термопринтеры все еще используют этот интерфейс.
Таким образом, если вы говорите, что он «печатает на COM-порт», это, вероятно, означает очень простой поток символов ASCII, строки / строки заканчиваются символами CR-LF. В то время как все основанные на USB растровые принтеры используют некоторый язык высокого уровня (PCL или PostScript) для управления принтером. Даже если вы отобразите свой выход на виртуальный порт COM / USB, результирующий поток данных будет ASCII-CR-LF, и никакие USB-принтеры не смогут этого понять.
То, что вы, вероятно, можете сделать, это каким-то образом виртуально подключить выход COM к приложению «терминала» Windows, а затем использовать сгенерированное растровое изображение как изображение для печати (включая принтеры с интерфейсом USB). Это выглядит некрасиво, но печать через COM-порт - взрыв из глубокого прошлого.