Hola, la genero con códigos de esc ya que así me sirve para casi todas las impresora, el programa tiene un apartado en el que se configuran los códigos de salto de línea, ancho letra, tamaño de la letra, negrita etc.
Existen unos códigos ESC extendidos que funcionan como comandos de control para las impresoras y permiten definir unos caracteres personalizados.
Desconozco si esta extensión está implementada de la misma manera en todas las impresoras, pero recuerdo que me sirvió, hace años, para hacer algo parecido. De todas maneras, creo que el número de caracteres "personalizados" a definir era muy limitado (quizas 10?) por tanto sólo servía para generar pequeños logos o hacer alguna filigrana antes o después de un texto.
Otra manera es enviando el bitmap de manera secuencial. Mira a partir de la pg.32 de este link. Necesitarás conocer los puntos del bitmap que quieras imprimir con antelación ya escalados a las dimensiones de la página donde imprimir.