FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Poner texto sobre Bitmaps
Posts: 219
Joined: Fri Nov 04, 2005 02:34 PM

Poner texto sobre Bitmaps

Posted: Fri Dec 16, 2005 04:55 PM

Tengo la siguiente Ventana:

DEFINE WINDOW oWnd FROM 0,0 TO 45,90 TITLE NAMEPROGRAM ICON oIcon COLOR CLR_BLACK,RGB(172,194,139)

DEFINE BITMAP oBitmap FILE ".\BMPS\FONDO.BMP"

ACTIVATE WINDOW oWnd MAXIMIZED ;
ON PAINT ColocaBitmaps( oWnd, hDC, oBitmap:hBitmap, oBitmap )

STAT FUNC ColocaBitmaps( oWnd, hDC, hBmp, oBitmap )
LOCAL nTop := 0
LOCAL nLeft := 235
LOCAL nWidth := oWnd:nWidth() - 235
LOCAL nHeight := oWnd:nHeight()
IF hBmp = 0
RETURN NIL
ENDIF
PALBMPDRAW( hDC, nTop, nLeft, hBmp , , nWidth, nHeight )
Return NIL

Ahora bien, NECESITO escribir encima del bitmap
varios textos y en varios tipos de letras y colores.
Es posible ?
Como se hace ?

Gracias de antemano.

Juan Carlos Salinas Ojeda

M茅xico. D.F.

-------------------------------------------------
Posts: 1088
Joined: Fri Oct 07, 2005 03:33 PM

Poner texto sobre Bitmaps

Posted: Fri Dec 16, 2005 05:37 PM

Hola,

pues ahora tu contenerdor seria el BITMAP, @ 10,10 SAY "hhhh" OF oBmp
deberia funcionar

saludos

Marcelo

Posts: 326
Joined: Sun Oct 09, 2005 05:22 PM

Poner texto sobre Bitmaps

Posted: Fri Dec 16, 2005 05:50 PM

Se me ocurre usar:

DrawText( <hDC>, <cText>, <aRect>, <nStyle> )

Saludos.

Posts: 1054
Joined: Sun Oct 09, 2005 10:41 PM

Poner texto sobre Bitmaps

Posted: Fri Dec 16, 2005 07:01 PM

Yo le hago asi:

DEFINE WINDOW oWnd...

ACTIVATE WINDOW oWnd ON INT (ResumCtas(oWndl) )
..
..
Function ResumCtas(oWndl)
..
..
@90, SAY cDatos OF oWnd
..
Return(Nil)

Salu2

Posts: 229
Joined: Wed Oct 12, 2005 05:32 PM

Poner texto sobre Bitmaps

Posted: Fri Dec 16, 2005 08:47 PM

Juan Carlos,

Tal como dicen Alfredo y Willi deber铆a funcionar. Sin embargo... si esos SAYS los escribes encima de los bitmaps deber谩s preocuparte que en cada repintado del bitmap vuelvas a escribir el say encima del bitmap. Una posible soluci贸n podr铆a ser a帽adir el c贸digo para escribir esos SAYS en la funci贸n que utilizas para pintar los bitmaps.

Espero que te sea de ayuda.

Saludos,
Jos茅 Luis Capel

www.capelblog.com

Posts: 219
Joined: Fri Nov 04, 2005 02:34 PM

Poner texto sobre Bitmaps

Posted: Fri Dec 16, 2005 10:05 PM

Amigos, ninguna forma fucion贸!

SetBkMode( oBitmap:hDC, 1 )
TextOut( oBitmap:hDC, 1, 1, "PROBANDO EL TEXTO" )
DrawText( oBitmap:hDC, "OTRA PRUEBA DEL TEXTO", { 1,1,500,500 } )

Alguna otra alternativa ???

Juan Carlos Salinas Ojeda

M茅xico. D.F.

-------------------------------------------------
Posts: 219
Joined: Fri Nov 04, 2005 02:34 PM

Poner texto sobre Bitmaps

Posted: Fri Dec 16, 2005 10:07 PM

Tampoco esta:

@ 1,1 SAY oSay PROMPT "PROBANDO" OF oBitmap

Help please !!!

:(

Juan Carlos Salinas Ojeda

M茅xico. D.F.

-------------------------------------------------
Posts: 229
Joined: Wed Oct 12, 2005 05:32 PM

Poner texto sobre Bitmaps

Posted: Fri Dec 16, 2005 11:05 PM
Juan Carlos,

Este trozo de c贸digo es la funci贸n DRAW del ejemplo testbrus.prg que hay en la carpeta SAMPLES.

function Draw( oWndC, cBitmap )

   local hBitmap

   oWndC:GetDC()

   hBitmap = ReadBitmap( oWndC:hDC, cBitmap )
   DrawBitmap( oWndC:hDC, hBitmap, 0, 0 )

   // jlcr
   DrawText( oWndC:hDC,"www.capelblog.com", {100,0,100,100})
   // jlcr 


   oWndC:ReleaseDC()

   DeleteObject( hBitmap )


return nil


Sustituye este c贸digo por el que hay en testbrus.prg

Espero que sea de ayuda.

Saludos,
Jos茅 Luis Capel
www.capelblog.com
Posts: 840
Joined: Thu Oct 13, 2005 07:05 PM

Poner texto sobre Bitmaps

Posted: Fri Dec 16, 2005 11:49 PM

Jose Luis:

Se te olvido:

SetBkMode(oWndc:dc,0) para hacer el texto transparente

o

SetBkMode(oWndc:dc,1) para hacerlo con opaco

Saludos

R.F.
Posts: 229
Joined: Wed Oct 12, 2005 05:32 PM

Poner texto sobre Bitmaps

Posted: Sat Dec 17, 2005 07:59 AM
Ren茅,

Se te olvido:

SetBkMode(oWndc:dc,0) para hacer el texto transparente

o

SetBkMode(oWndc:dc,1) para hacerlo con opaco


Solo me centr茅 en la impresi贸n del texto. Pero es cierto que le falta a帽adir la transparencia.

Gracias por la aclaraci贸n.

Saludos,
Jos茅 Luis Capel
Posts: 172
Joined: Fri Oct 07, 2005 12:00 PM

pintar encima del bitmap

Posted: Sun Dec 18, 2005 04:40 PM

Creo que deberias implementar tus funciones de pintado en el bPainted del bitmap

oBmp:bPainted := {|hDC| MiFuncion( hDC ) }

function Mifuncion( hDC )

drawtext( hdc, "hola", rc, 0 )

por ejemplo. Las coordenadas de rc son relativas al bitmap

Un saludo

Continue the discussion