https://foro.gambas-es.org/viewtopic.php?f=1&t=1993&p=11660#p11660
-----------------------------------
alan
Lunes, 31 Octobre 2011, 19:33

Re: Ayuda Con Reporte
-----------------------------------
A mi me pasaba igual pero con esta funcion se soluciona. Espero que te sirva


PUBLIC SUB Imprimir_reporte(Text AS String)
  DIM textLine AS String
  DIM fontHeight AS Integer
  DIM pagePosition AS Integer
  ' Display printer dialog
  IF Printer.Setup() THEN RETURN
  Draw.Begin(Printer)
  ' Calcula el tamaño de cada linea del texto
  fontHeight = Draw.TextHeight("My DEMO Font Height")
  ' If the WrapText options is selected then resize each line
  pagePosition = 0
  FOR EACH textLine IN Split(Text, "\n")
    ' Chequea si llego al final de la linea 
    IF pagePosition > (Printer.Height - (3 * fontHeight)) THEN
      ' Resetea la pagina y vuelve a la posicion inicial para volver a imprimir nueva pagina
      pagePosition = 0
      Printer.NewPage()
    END IF
    ' Calcula la posicion de la siguiente linea
    pagePosition += fontHeight
    Draw.Text(textLine, Printer.Resolution / 2, pagePosition)
  NEXT
  Draw.End
  DEC Application.Busy
END ' Gambas module file


lo que haces con esto es pesarle como parámetro un textarea cualquiera y se imprime lo que haya en ese textarea. No hace falta que lo envies a html


