Page 1 of 1

Ayuda: caractéres graficos al modo MS-DOS en TReport.

PostPosted: Tue Jun 29, 2010 3:10 pm
by fernandomoralesdr
Hola.
Estoy creando un informe para una factura con la clase TReport y quiero incluir caractéres gráficos Alt+179, Alt+196 (│, ─, ├, ┼ ) al igual que hacia en MS-DOS, pero no consigo que me los muestre al imprimir; siempre me los convierte a otros caractéres. Sin embargo, me he dado cuenta de que en la clase TReport se utilizan este tipo de caractéres y los muestra bien . ¿Alguna ayuda al respecto?

Re: Ayuda: caractéres graficos al modo MS-DOS en TReport.

PostPosted: Wed Jun 30, 2010 6:32 am
by Carlos Mora
Fernando,

TReport no usa los caracteres especiales, sino que dibuja líneas. Puedes ver como lo hace mirando el código, es algo complejo pero seguramente te aclarará muchos conceptos y te dará ideas.

Re: Ayuda: caractéres graficos al modo MS-DOS en TReport.

PostPosted: Wed Jun 30, 2010 9:43 am
by fernandomoralesdr
Hola Carlos.
Mirate el fuente de TReport (más menos línea 710) y verás que utiliza caractéres gráficos para montar el separator, aunque no sé por qué ahí funciona y a mi no.

Re: Ayuda: caractéres graficos al modo MS-DOS en TReport.

PostPosted: Wed Jun 30, 2010 10:49 am
by Carlos Mora
Si, lo ví, dice

Code: Select all  Expand view
  if ! ::lPrinter .and. ! ::lScreen

      cSeparator := ""
      AEval( ::aColumns,;
         {|val| cSeparator += Replicate( "Ä", Val:nWidth) + "Å" } )
      cSeparator := "Ã" + Substr( cSeparator,1, Len( cSeparator ) - 1 ) + "´"
      ::oDevice:Say( nRow, nLeft - ::nSeparator, cSeparator )
      ::Shadow( ::nStdLineHeight )
      ::nRow += ::nStdLineHeight
      return nil

   endif

 


es decir si no es ni impresora ni pantalla arma los separadores, que creo que no es nuestro caso.