Manual de la clase TPRINT |
TPRINT(ctlibrary)
inicializa la clase y Se le dice a tprint() que libreria de impresion usar,
ctlibrary= los valores posibles son "HBPRINTER", "MINIPRINT","DOSPRINT" ,
"EXCELPRINT","RTFPRINT","CSVPRINT","HTMLPRINT","PDFPRINT"
si no se especifica ningun valor se asume "MINIPRINT"
::init()
inicializa algunas variables necesarias para cada libreria
::selprinter(lselect,lpreview,llandscape,npapersize,cprinterx)
Inicializa impresora,
lselect= .T. muestra cuadro de dialogo para seleccionar impresora
lselect= .F. toma impresora por defecto
lpreview= .T. muestra preliminar antes de imprimir
lpreview= .F. no muestra preliminar
llandscape= .T. impresion horizontal
llanscape=.F. impresion vertical
npapersize = tamaño del papel segun standares del hbprinter
cprinterx = nombre de la impresora si se quiere hacer una impresion directa
sin que sea la impresora por defecto o la seleccione por dialogo.
::begindoc(cname)
Inicia documento
cname= nombre del documento (si no se coloca asume por defecto
el de la libreria de impresion.
::setpreviewsize()
setea el tamaño del preview para hbprinter , valores pueden ser 1 menor , 2
mas grande, 3 mas grande etc.. (no tiene efecto para las demas librerias)
::beginpage()
Empieza una pagina
::printdata(nfila,ncolumna, dato a imprimir,ctipoletra,ntamañoletra,lbold
, acolor, calineacion, nancho, nangulo)
imprime los datos
nfila= fila de impresion
ncolumna = columna de impresion
dato a imprimir= puede ser de cualquier tipo
ctipoletra = tipo de letra a usar, si no se especifica toma que la esta en curso
que sera si no se ha especificado otra courier new.
ntamañoletra= tamaño de la letra en puntos
lbold = .T. negrita
lbold = .F. normal
acolor = arreglo RGB para darle un color al texto.
calineacion= alineacion del dato "L" izquierda "C" centro "R" derecha por
defecto "L"
nancho= tamaño del campo, se debe utilizar cuando se quiere alinear al centro
o a la derecha por defecto es 15.
nangulo= Angulo del texto (solo hbprint)
::printimage(nfila,ncol,nfilaf,ncolf,cimagen)
Imprime una imagen.
nfila = fila de impresion inicial
ncol = columna inicial
nfilaf = fila final
ncolf = columna final
cimagen = grafico a imprimir
::printline(nfila,ncol,nfilaf,ncolf,atcolor,ntwpen)
imprime una linea desde hasta
nfila = fila de impresion inicial
ncol = columna inicial
nfilaf = fila final
ncolf = columna final
atcolor = arreglo RGB del color a usar
ntwpen = ancho del pincel por defecto 1
nota: si es DOS solo la imprime si la linea inicial es igual a la final
::printrectangle(nfila,ncol,nfilaf,ncolf,atcolor,ntwpen,arcolor)
imprime un rectangulo
nfila = fila de impresion inicial
ncol = columna inicial
nfilaf = fila final
ncolf = columna final
atcolor = arreglo RGB del color a usar
ntwpen = ancho del pincel por defecto 1
arcolor= arreglo RGB del color a rellenar el rectangulo
::printroundrectangle(nfila,ncol,nfilaf,ncolf,atcolor,ntwpen)
imprime un rectangulo esquinas redondeadas
nfila = fila de impresion inicial
ncol = columna inicial
nfilaf = fila final
ncolf = columna final
atcolor = arreglo RGB del color a usar
ntwpen = ancho del pincel por defecto 1
::setcolor(atcolor)
setea el color en curso a un nuevo valor, el parametro sera un arreglo RGB.
::getdefprinter()
obtiene la impresora por defecto
::setunits(cunits,cunitslin)
dice que unidades usar por defecto usa ROWCOL aunque internamente todo se
hace en MM para que sea mas exacto entre varias impresoras.
cunits= posibles valores "MM" "ROWCOL"
cunitslin= interlineado, milimetros entre linea y linea (para evitar los renglones en blanco en excel, rtf, html)
::endpage()
Finaliza una pagina
::enddoc()
Termina un documento
::release()
libera la clase
::version()
Devuelve la version de Tprint actual
::setlmargin()
Setea el margen izquierdo
::settmargin()
Setea el margen superior
Todos los parametros de todos los metodos son opcionales.
NOTA:
Si se desea utilizar una propiedad exclusiva de una libreria sin que nos de error
con el resto de librerias, se puede utilizar de la siguiente forma:
ejemplo asignar el largo y ancho de la hoja para MINIPRINT
IF ::cprintlibrary="MINIPRINT"
SELECT PRINTER DEFAULT ORIENTATION PRINTER_ORIENT_LANDSCAPE PAPERLENGTH 2970 PAPERWIDTH 2100 COPIES 5
ELSE
oprint:selprinter(.F. , .F. , .F. , , )
ENDIF
ejemplo utilizar la propiedad STRETCH de IMAGE en MINIPRINT
IF ::cprintlibrary="MINIPRINT"
@ 20,20 PRINT IMAGE FOTO3 WIDTH 150 HEIGHT 190 STRETCH
ELSE
oprint:printimage(20,20,150,190,FOTO3)
ENDIF
ejemplo utilizar la propiedad EXTEND de PICTURE en HBPRINT
IF ::cprintlibrary="HBPRINT"
@ 20,20 PICTURE FOTO3 SIZE 65,85 EXTEND 150,190
ELSE
oprint:printimage(20,20,150,190,FOTO3)
ENDIF