Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Impresión
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-05-2011
Avatar de saldanaluis
saldanaluis saldanaluis is offline
Miembro
 
Registrado: nov 2006
Ubicación: Monterrey NL México
Posts: 122
Poder: 18
saldanaluis Va por buen camino
Unhappy Imprimir texto con textout y sin rectangulo

Amigos del foro.
Tengo una aplicación que imprime dos tipos de información por cada orden de venta a embarcar, una hoja con texto y con una imagen (el logo de mi cliente) que corresponde a la información de los artículos que se están embarcando (primer tipo de información de la orden de venta a embarcar). Una vez que imprimo esta hoja, hago un 'Printer.EndDoc;' y luego hago un 'Printer.BeginDoc;' para pasar a imprimir la información de lo que contiene cada caja del pedido que se está embarcando (segundo tipo de información de la orden de venta a embarcar), una hoja por cada caja del embarque de la orden de venta que se imprimió al principio.

Les muestro el código que uso al iniciar a imprimir la información de cada caja del embarque.
Código Delphi [-]
procedure TFVerificaOrdenVenta.Imprime_Etiquetas;
var
  NumPartida: integer;
begin
Printer.Title := 'Etiquetas';
Printer.BeginDoc;
Printer.Canvas.Font.Size := 8;
altura := Printer.Canvas.TextHeight('qadgW')+1;
// más codigo que contiene comandos  'TextOut'

El problema que tengo es que al imprimir las etiquetas de las cajas (segundo tipo de información), todo el texto que imprimo directo al canvas con un 'textout' sale enmarcado con un rectangulo del tamaño exacto del texto que se está imprimiendo.
De aqui en adelante, todo el texto que imprimo sale enmarcado con un rectangulo, incluso la información de los artículos que se están embarcando (primer tipo de información).
Cabe hacer notar que la primera hoja de la información de los artículos que se estan embarcando sale bien, pero la información del segundo embarque ya sale con el texto enmarcado. despues de haber impreso las etiquetas de cada caja del embarque.

¿De que manera me puedo asegurar que los textos NO salgan enmarcados con un rectangulo?

Gracias por su amable ayuda.

Luis
Responder Con Cita
  #2  
Antiguo 29-05-2011
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.457
Poder: 20
newtron Va camino a la fama
Hola.

No das muchas pistas pero ¿es posible que no asignes la fuente al texto y por eso salga de esa manera?

Saludos

P.D: cuando me refiero a la fuente me refiero al tipo de fuente

Última edición por newtron fecha: 29-05-2011 a las 10:25:35. Razón: Completo con pd
Responder Con Cita
  #3  
Antiguo 30-05-2011
Avatar de saldanaluis
saldanaluis saldanaluis is offline
Miembro
 
Registrado: nov 2006
Ubicación: Monterrey NL México
Posts: 122
Poder: 18
saldanaluis Va por buen camino
Te refieres a que le ponga algo como:

Printer.Canvas.Font.Name := 'Arial';

¿es correcto?

Saludos...
Responder Con Cita
  #4  
Antiguo 30-05-2011
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.457
Poder: 20
newtron Va camino a la fama
Claro, si no pones el tipo de fuente con el que quieres imprimir es posible que se le vaya la perola.
Responder Con Cita
  #5  
Antiguo 30-05-2011
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Si quieres pintar en el canvas, debes establecer las propiedades más relevantes, de otra forma usarás las que ha dejado otra aplicación establecida o las que tiene por defecto la impresora.

Revisa la propiedad Pen y brush del canvas y todas sus propiedades.
- Pen es para pintar el borde, normalmente Pen.Style := psClear elimina el marco alrededor
- brush es para el color de fondo y el patrón que se usará.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #6  
Antiguo 17-06-2011
Avatar de saldanaluis
saldanaluis saldanaluis is offline
Miembro
 
Registrado: nov 2006
Ubicación: Monterrey NL México
Posts: 122
Poder: 18
saldanaluis Va por buen camino
Muchas gracias.

Ya no me sale el marco alrrededor de la información que mando imprimir. Aunque también le hice otro cambio. Dado que ya tengo la 2a impresora, ahora no ando enviando los dos reportes a la misma impresora, sino que cada reporte se va a su impresora correspondiente. No se si eso pudiera haber afectado positivamente para corregir esta situación, pero hago saber que ya se corrigió con las sugerencias recibidas por si a alguien más le sucede lo mismo, sepa que esto se puede corregir.

Gracias nuevamente.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Imprimir en modo texto .. ingel Impresión 6 14-02-2009 16:29:43
callback para drawtext textout callbacking API de Windows 8 27-07-2008 03:42:33
problema con backgroud del Canvas.TextOut miguel_e Gráficos 1 20-05-2008 19:02:38
canvas y TEXTOUT underwater Gráficos 2 31-03-2008 22:44:55
Alternativa a TEXTOUT que soporte Unicode MDSato Gráficos 10 20-03-2007 14:36:59


La franja horaria es GMT +2. Ahora son las 17:47:04.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi