by leondefrancia » Fri Nov 12, 2010 12:59 pm
Gracias francisco por tu buena predisposición, la clase esta igual a la que tenía. Con esto descarté la posibilidad de que hubiera correcciones o mejoras, por lo tanto estoy haciendo algo mal.
Uno de mis inconvenientes radica en que en los ejemplos la persona imprime o visualiza y en mi caso nescesito realizar ambas tareas al mismo tiempo.
La estructura lógica en este momento es la siguiente
Creo los dos objetos oPrnImp y oPrnPan
oPrnPan:= TPRINTER():New("Reporte", .F., .T., Nil, .T.)
oPrnPan:SetPage(9)
oPrnImp:= TPRINTER():New("Reporte", .F., Nil, "Impresora")
oPrnImp:SetPage(9)
Configuro ambas resoluciones
nC:= oPrnImp:nHorzRes()/80
nF:= oPrnImp:nVertRes()/68
nCP:= oPrnPan:nHorzRes()/80
nFP:= oPrnPan:nVertRes()/68
Defino los font a utilizar (hay algunos más para negrita normal y negrita condensada)
DEFINE FONT oFontR NAME "Courier" SIZE 0,-12 OF oPrnImp
ACTIVE FONT oFontR
DEFINE FONT oFontC NAME "Courier" SIZE 0,-6.6 OF oPrnImp
ACTIVE FONT oFontC
DEFINE FONT oFontRP NAME "Courier" SIZE 0,-12 OF oPrnPan
ACTIVE FONT oFontRP
DEFINE FONT oFontCP NAME "Courier" SIZE 0,-6.6 OF oPrnPan
ACTIVE FONT oFontCP
oFontX:= oFontR
oFontXP:= oFontRP
oPrnPan:StartPage()
oPrnImp:StartPage()
Aca llamo a una función que evalúa el contenido del string a imprimir y lo único que realiza es ir cambiando el tipo de fonts para el say.
oPrnPan:Say(nRow * nFP, nCol * nCP, "Texto")
oPrnImp:Say(nRow * nF, nCol * nC, "Texto")
oPrnPan:EndPage()
oPrnImp:EndPage()
oPrnPan:Preview()
oPrnPan:End()
oPrnImp:End()
TPreview me produce un error, cuando crea la barra de botones. Ayer traté de encontrar la manera de crear un pdf y visualizarlo pero FiveWin no trae una manera transparente de hacerlo, hay que tener una dll de terceros, sigo investigando que hacer, bajé la de M. Mercado pero no pude compilarla para poder probarla.
Probé Wormar actualizando la dll pero sucede lo mismo, no se ya que probar.
Libreria: FWH/FWHX 9.11 25/November/2009
Harbour: Harbour 2.0.0 Beta2
Compilador: Borland C++ 5.5.1 versión 32 bits
Editor de Recursos: UEstudio 10.0
Gestor de B.D: A.D.A ( Advantage Data Architect )
S.O: Windows XP