In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Font Condensed

Foro de Xailer profesional en español
Responder
zeasoftware
Mensajes: 1831
Registrado: Mar Oct 11, 2005 9:53 am

Font Condensed

Mensaje por zeasoftware »

Alguien podria ayudarme para saber como o con que tipo de letra podria
simular la ledra CONDENSADA que se usaba al imprimir desde DOS?
La letra clasica que usamos para imprimir las partidas de una factura.
Gracias.
--
Ramón Zea
ramonzea@yahoo.com
http://www.paginasprodigy.com/zeasoft/
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5718
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

Font Condensed

Mensaje por jfgimenez »

Ramón,
> Alguien podria ayudarme para saber como o con que tipo de letra podria
> simular la ledra CONDENSADA que se usaba al imprimir desde DOS?
>
> La letra clasica que usamos para imprimir las partidas de una factura.
Puedes usar una courier new y reducir la anchura lo que necesites,
manteniendo la altura. De todos modos no es una medida exacta, ya que
depende de la resolución de la impresora. Esta tarde buscaré cómo lo calculo
yo y te lo digo.
--
Un saludo,
José F. Giménez
http://www.xailer.com
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5718
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

Font Condensed

Mensaje por jfgimenez »

Ramón,
> Alguien podria ayudarme para saber como o con que tipo de letra podria
> simular la ledra CONDENSADA que se usaba al imprimir desde DOS?
>
> La letra clasica que usamos para imprimir las partidas de una factura.
Prueba a crearla así (una vez creada la página en la impresora):
aSize := { GetDeviceCaps( Printer:hdc, LOGPIXELSX ) / 17.14, ;
GetDeviceCaps( Printer:hdc, LOGPIXELSY ) / 6 }
oFont := TFont():Create( "Courier New", aSize )
Printer:oCanvas:SelectFont( oFont )
...
oFont:Destroy()
--
Un saludo,
José F. Giménez
http://www.xailer.com
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
zeasoftware
Mensajes: 1831
Registrado: Mar Oct 11, 2005 9:53 am

Font Condensed

Mensaje por zeasoftware »

Excelente, el unico detalle es que el ::oFont:nHeight regresa un valor muy pequeño por lo que para incrementar la linea hay que pasarlo a mano.
En el PreView de Xailer, se descomponen las letras, se revuelven y conforme se amplia las leras se van viendo mas pequeñas, pero, al mandar a imprimir queda excelente.
Lo puse asi:
WITH OBJECT ::oDevice
:lPreview := ::lPreview
:cJobTitle := "Cotización: " + ::oDocumento:cFolio
:StartDoc()
:oCanvas:nMapMode := mmHIMETRICS
:StartPage()
aSize := { GetDeviceCaps( Printer:hdc, LOGPIXELSX ) / 17.14, ;
GetDeviceCaps( Printer:hdc, LOGPIXELSY ) / 6 }
WITH OBJECT ::oFontBody := TFont():New( ::oDevice )
:cName := "Courier New"
:nSize := aSize
:lBold := .f.
:Create()
END WITH
:::::::
::::::::
Estuve bien?
Mil Gracias.
--
Ramón Zea
ramonzea@yahoo.com
http://www.paginasprodigy.com/zeasoft/
--
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5718
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

Font Condensed

Mensaje por jfgimenez »

Ramón,
Excelente, el unico detalle es que el ::oFont:nHeight regresa un valor muy pequeño por lo que para incrementar la linea hay que pasarlo a mano.
En el PreView de Xailer, se descomponen las letras, se revuelven y conforme se amplia las leras se van viendo mas pequeñas, pero, al mandar a imprimir queda excelente.
Lo puse asi:
WITH OBJECT ::oDevice
:lPreview := ::lPreview
:cJobTitle := "Cotización: " + ::oDocumento:cFolio
:StartDoc()
:oCanvas:nMapMode := mmHIMETRICS
:StartPage()
aSize := { GetDeviceCaps( Printer:hdc, LOGPIXELSX ) / 17.14, ;
GetDeviceCaps( Printer:hdc, LOGPIXELSY ) / 6 }
WITH OBJECT ::oFontBody := TFont():New( ::oDevice )
:cName := "Courier New"
:nSize := aSize
:lBold := .f.
:Create()
END WITH
:::::::
::::::::
Estuve bien?
Es mejor que crees la fuente tal cual te puse yo, con todos los parámetros de TFont():Create(...), y después, para usarla, tienes que asignarla al objeto canvas también como te puse:
Printer:oCanvas:SelectFont( oFont )
De esa forma te tiene que funcionar 100% bien.
--
Un saludo,
José F. Giménez
http://www.xailer.com
--
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
Responder