Fraguibo escribió:
Jesús:
Gracias por tu respuesta, pero la imagen que tengo que colocar es en color y aquí me sale en Blanco y Negro, esto es un defecto de la función DrawBitmap(<x>,<x>), o es algo que estoy haciendo mal.
Aquí te adjunto el código para que le eches un vistazo y perdona por las molestias que te estoy causando.
MethodImprimirFicha(x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,;
x13,x14,x15,x16,x17,x18,x19,x20) Class TPrincipal
Local oBitmap
oBitmap:=TBitmap():Create()
oBitmap:MaskColor:=clOlive
oBitmap:FileName:=x19
// Montamos la ficha.
// ==================
Printer:Orientation:=poLandscape
Printer:BeginDoc()
Printer:NewPage()
// Recuadro de la ficha.
// ==============================
Printer:DrawBox({14,16,284,194})
Printer:DrawShadow({13,15,284,194})
// Cabecera de la ficha.
// =====================
PrintTexto('Número de Ficha'+Repli(' .',34),'Arial',22,.f.,;{26,20,230,34},TA_LEFT)
PrintTexto(StrZero(x1),'Arial',22,.f.,{230,20,274,34},TA_RIGHT)
// Linea de separación.
// ====================
Printer:DrawLine({16,32,282,32})
Printer:DrawShadow({15,32,281,32})
// Colocar la imagen.
// ==================
Printer:DrawBitmap(oBitmap:Handle,{16,40,84,148})
// Terminar de montar la ficha.
// ============================
Printer:EndDoc()
Printer:Preview()
// Imprimir la ficha.
// ==================
Printer:ShowDialog:=.T.
Printer:Print()
oBitmap:Destroy()
Return
Un saludo.
Fraguibo
- En el preview de TPrinter ¿ también te sale en B/N?
- Otra posibilidad es que la imagen fuera de más de 24 bits.
- Si es al imprimir, las pruebas las haces con una impresora de color, ¿no?.