![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Cita:
¿Puedes poner un poco de codigo? |
|
#2
|
|||
|
|||
El código!!!. Ahí va...procedure TForm1.BitBtn1Click(Sender: TObject); var X, Y, Z, W, MaxValor,TamLinea: Integer; Color : LongInt; Histograma : array[0..255] of Integer; begin MaxValor := 0; for Z:=0 to 255 do begin Histograma[Z] := 0; end; for Y := (image1.Width - image1.Width) to image1.Width do begin for X := (image1.Height - image1.Height) to image1.Height do begin Color := image1.Canvas.Pixels[X, Y]and $FF; {De RGB a 256 colores} Histograma[Color] := Histograma[Color]+1; end; end; for Z:=0 to 255 do begin if( Histograma[Z] > MaxValor ) then MaxValor := Histograma[Z]; end; for Z:=0 to 255 do begin TamLinea := ((Histograma[Z] * 312) div MaxValor); image2.Canvas.MoveTo(18+Z, 326); image2.Canvas.LineTo(18+Z, 326-TamLinea); end; end; Salu2 ![]() |
|
#3
|
||||
|
||||
|
Bien, en tu código el problema es el siguiente (marcado en rojo), al hacer referencia a un pixel que no existe devuelve el color blanco por defecto, por eso te aparecía el color blanco aun cuando la imagen no lo contenía:
Por otro lado, retoque un poco el código:
Pero esto ultimo ya es cuestión de gustos. De todas formas para este tipo de operaciones usar la propiedad Pixels del canvas es poco eficiente. Echale un vistazo a la propiedad Scanline del bitmap, mucho mas apropiada para estos casos. PD: Usa la etiquetas [delphi][/delphi] para incluir código, de esta manera se podrá leer mucho mejor. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Como hago un pixel transparente | jorge1987 | Gráficos | 7 | 26-09-2006 20:19:28 |
| pasar imagen pixel a pixel | gulder | Gráficos | 7 | 26-06-2005 02:10:45 |
| Como asignarle atributos a un pixel? | bustio | .NET | 0 | 03-12-2004 20:42:00 |
| Obtener posicion X,Y de un pixel en un TImage | diegofhernando | Varios | 3 | 17-12-2003 15:03:23 |
| ¿ Cual es la mejor forma de implementar una Pizarra con Sockets? pixel a pixel ? | sase | Internet | 1 | 22-10-2003 16:23:50 |
|