Ir al contenido


Foto

Dibujar pantalla con GetPixel


  • Por favor identifícate para responder
3 respuestas en este tema

#1 BrainDeath

BrainDeath

    Member

  • Miembros
  • PipPip
  • 28 mensajes

Escrito 28 diciembre 2009 - 11:52

Hola ultimamente he estado investigando sobre la api getpixel pero casi no encuentro informacion y ejemplos ps alguien me podria ayudar con algun ejemplo o un codigo simple de dibujar en la pantlla. Un ejemplo: dibujar un texto en una X coordenada.

Seria una gran ayuda y avanze,Saludos.  :grin:
  • 0

#2 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4.107 mensajes
  • LocationMadrid - España

Escrito 29 diciembre 2009 - 06:08

Realmente GetPixel no sirve para pintar un texto, sólo devuelve el color de un pixel de un determinado hDC. El hDC es mas o menos el equivalente al Canvas pero desde el punto de vista de la API.

Para dibujar un texto puedes usar TexOut, como en este ejemplo que dibuja un texto en la pantalla en las coordenadas (0, 0).



delphi
  1. program PruebaTextOut;
  2.  
  3. uses
  4.   SysUtils,
  5.   windows;
  6.  
  7. var
  8. hDC:  Thandle;
  9. begin
  10.   hDC:= GetDC(0);
  11.   TextOut(hDC, 0, 0, 'TextOut', 7);
  12.   ReleaseDC(0, hDC);
  13.   Sleep(3000);
  14. end.




Saludos.

  • 0

#3 BrainDeath

BrainDeath

    Member

  • Miembros
  • PipPip
  • 28 mensajes

Escrito 29 diciembre 2009 - 12:02

Realmente GetPixel no sirve para pintar un texto, sólo devuelve el color de un pixel de un determinado hDC. El hDC es mas o menos el equivalente al Canvas pero desde el punto de vista de la API.

Para dibujar un texto puedes usar TexOut, como en este ejemplo que dibuja un texto en la pantalla en las coordenadas (0, 0).



delphi
  1. program PruebaTextOut;
  2.  
  3. uses
  4.   SysUtils,
  5.   windows;
  6.  
  7. var
  8. hDC:  Thandle;
  9. begin
  10.   hDC:= GetDC(0);
  11.   TextOut(hDC, 0, 0, 'TextOut', 7);
  12.   ReleaseDC(0, hDC);
  13.   Sleep(3000);
  14. end.




Saludos.


Muchas Gracias me ha funcionado de maravilla ya me he dado cuenta que la api tiene varias propiedades y una de esas es TextOut  :cheesy: pero una ultima duda como le puedo cambiar sus propiedades al texto como su tamaño,color etc..  :embarrassed:
  • 0

#4 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4.107 mensajes
  • LocationMadrid - España

Escrito 29 diciembre 2009 - 06:29

..pero una ultima duda como le puedo cambiar sus propiedades al texto como su tamaño,color etc..


Aquí tienes otro ejemplo sólo con API:



delphi
  1. program PruebaTextOut2;
  2.  
  3. uses
  4.   SysUtils, Graphics, Windows;
  5.  
  6. var
  7. hDC:  Thandle;
  8. begin
  9.   hDC:= GetDC(0);
  10.   SetBkColor(hDC, ColorToRGB(clYellow));
  11.   SetTextColor(hDC, ColorToRGB(clRed));
  12.   SelectObject(hDC, CreateFont(20,20, 0,0,FW_NORMAL,0,0,0, ANSI_CHARSET,0,0,0,DEFAULT_PITCH, nil));
  13.   TextOut(hDC, 0, 0, 'TextOut', 7);
  14.   ReleaseDC(0, hDC);
  15.   Sleep(3000);
  16. end.



Saludos.
  • 0




IP.Board spam blocked by CleanTalk.