![]() |
Problema con el transparente
buenassssssssss!
aver, tengo una imagen .bmp en el clipboard, y la cargo en un timage usando Picture.Bitmap:LoadFromClipboardFormat... cuando seteo la propiedad transparent del TImage en true, no se pone transparente, sigue con el fondo blanco (fue una imagen hecha con el paint) ahora.... si yo la cargo desde tiempo de diseño desde un archivo, NO desde el clipboard, y hago lo mismo, la imagen se pone transparente como debe ser... no se que puede ser, pero desde mi ignorancia creo que es porque el ultimo parametro LoadFromClipboardFormat es el HPalette, y yo alli le envio un 0; supongo entonces, que tendria que enviarle un numero que identifique la palenta que usa el paintbrush o la del sistema, puede ser? siendo asi... como obtengo ese bendito numerito? abrazos Gabriel |
Hola,
Esto parece funcionar bien:
|
Prueba a asignarle tú mismo el color que debe adoptar como transparente, tras asignar la imagen del clipboard.
Puedes capturar el color de una coordenada de la misma imagen ( 0,0 en el ejemplo):
O bien, asignarle directamente un color transparente:
O
Salu2. |
obtener paleta del sistema
bien!
gracias! ahora, respecto a mi primer consulta... como puedo hacer para obtener la paleta del sistema o la paleta que usa el paintbrush y asi enviarla como referencia el ejecutar el metodo LoadFromClipboardFormat(...,...,aqui debo mandar la paleta) ? gracias gabriel |
No entiendo tu duda... y no se la razón exacta de empeñarte en utilizar ese método, cuando dec ya te puso un método correcto:
Image1.Picture.Bitmap.Assign(Clipboard); Aun así, si quieres utilizar el método que indicas: Image1.Picture.Bitmap.LoadFromClipBoardFormat(cf_BitMap,ClipBoard.GetAsHandle(cf_Bitmap),0); Salu2. |
Cita:
Primero, me gustaria saberlo porque me serviria para otros problemas, en cambio la rta q recibi esta buena pero me sirve para el mas urgente Segundo, viste ese 0 que envias como tercer parametro en LoadFromClipboardFormat (yo estoiy usando ese metodo tambien), bueno, en l help dice q referencia a la paleta (de colores) y que va 0 si no tiene paleta (eso es lo q entendi yo)... ahora bien, supongo q el paint y/o windows debe usar una paleta de colores no?, o sea debe haber una paleta del sistema, yo quiero saber si hay alguna manera de referenciar esa paleta y enviarla como parametro en lugar del cero saludos gabriel |
Hola,
La verdad sea dicha, no estoy muy puesto en el tema, pero, por lo que he podido leer en la ayuda de Delphi y en la del SDK Win32, cuentas con funciones y estructuras para crear paletas de colores y por tanto enviarlas como parámetro cuando se menester. Sin embargo, intuyo que es raro su uso y no solo por lo que se lee en la ayuda de la propiedad "Palette" del objeto "TBitmap": Cita:
Sin en la ayuda de Delphi buscas la cadena "Palette property TBitmap" (sin las comillas) te toparás con la descripción de esa propiedad y con un ejemplo que hace uso de la función "CreatePalette", entre otras cosas. Sin embargo, cuando en el ejemplo que da la ayuda de Delphi para el método "LoadFromClipboardFormat" de "TBitmap" se pasa un cero al parámetro "APalette" debe ser que sea suficiente para utilizar dicho método con el objeto "TBitmap". No es que quiera seguir el camino fácil y no darle muchas vueltas al asunto, sino que, como digo al principio, si no estoy equivocado, es raro el uso de paletas de colores (al menos de las paletas de colores que representan los objetos de que hablamos) y tengo para mí que algo ligado al pasado. En todo caso, ya digo, comenzando (recalco comenzando) por la ayuda que se te ofrece en el SDK Win32 sobre la función "CreatePalette" deberías poder crear ese tipo de objetos. Probablemente alguien podrá aportar algo más de información que nos ilustre sobre este tipo de objetos y sus usos y, si algún día hubo de vérselas con alguno, tal vez aportar algo de código a modo de ejemplo. Respecto a: Cita:
|
La franja horaria es GMT +2. Ahora son las 08:53:49. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi