Ver Mensaje Individual
  #5  
Antiguo 18-12-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Reputación: 24
seoane Va por buen camino
Cita:
Empezado por Delphius
No probé tu código... ya le hecho una ojeada profunda... pero a mi primera percepción, ya se está modificando el valor del pixel, en el mismo procedimiento.
Pues vuelve a echarle otra ojeada. Al comienzo del procedimiento hago esto:
Código Delphi [-]
  Bitmap.Canvas.Draw(0,0,Img.Graphic);
Es decir, copio el contenido de la imagen en un bitmap, que nos va a servir como almacenamiento temporal. Luego al operar, tomo los valores del bitmap temporal y los resultados los guardo directamente en la imagen final.

La única diferencia con tu código, es que en el mio no aplico el filtro sobre los pixels de la primera y ultima fila, ni tampoco sobre los de la primera y última columna. Te preguntaras por que, pues porque para esos puntos solo están disponibles, como mucho, 6 puntos de la matriz, por lo que al aplicar el filtro inevitablemente termina oscureciendo el borde da la imagen. Este efecto todavía es mas visible si pasas varias veces el filtro sobre una imagen.

Por cierto, me alegro de que no te moleste que me entrometiera en tu hilo.
Responder Con Cita