¿La función Api "GetPixel" es más rápida que Canvas.Pixels?Diferencia entre GetPixel y Canvas.Píxeles en Delphi
5
A
Respuesta
6
Debe ser la misma:
function TCanvas.GetPixel(X, Y: Integer): TColor;
begin
RequiredState([csHandleValid]);
GetPixel := Windows.GetPixel(FHandle, X, Y);
end;
4
Si usted está buscando algo que se comporta mejor que GetPixel/Canvas.Pixel [] que debe salir Bitmap.ScanLine. El único problema es que los datos pueden organizarse de varias formas, determinadas por Bitmap.PixelFormat
0
La función GetPixel es muy ¡lento! Si necesita un rendimiento alto (o incluso aceptable), debe usar la propiedad ScanLine. ScanLine [y] es un puntero a la línea yth de píxeles en el mapa de bits, codificado en el formato especificado por la propiedad PixelFormat. Por ejemplo, para un mapa de bits de 24 bits, la línea tiene el formato
B1 G1 R1 B2 G2 R2 ... Bn Gn Rn
si el ancho del mapa de bits es n. Bi, Gi y Ri son las intensidades azul, verde y roja del píxel i, respectivamente, como bytes.
Cuestiones relacionadas
- 1. ALPHA_8 bitmaps y getPixel
- 2. getPixel from HTML Canvas?
- 3. diferencia entre int * i y int * i
- 4. Diferencia entre. y: en Lua
- 5. Diferencia entre == y === en JS
- 6. Diferencia entre '' y "" en Python
- 7. Diferencia entre '.' y "." en java
- 8. MySQL: diferencia entre ', `,' y"
- 9. Diferencia entre. y #
- 10. Diferencia entre & y &
- 11. ¿Diferencia entre == y caso?
- 12. La diferencia entre $ * y $ @
- 13. Diferencia entre objeto y *?
- 14. VBA: Diferencia entre y y +
- 15. Diferencia entre "y" y "donde" en une
- 16. Diferencia entre "y" y && en Ruby?
- 17. Diferencia entre modificadores de acceso "estrictamente privados" y "protegidos" en Delphi?
- 18. ¿Hay alguna diferencia entre la matriz y la matriz empaquetada en Delphi?
- 19. ¿Cuál es la diferencia entre los miembros de la clase pública y publicada en Delphi?
- 20. Diferencia entre -Wconversion entre gcc y g ++
- 21. Delphi - Diferencias entre CompareStr y CompareString
- 22. Delphi XE2 y LiveBindings entre controles
- 23. Diferencia entre DataSource y DataSet
- 24. Diferencia entre SwingWorker y SwingUtilities.invokeLater
- 25. Diferencia entre java.exe y javaw.exe
- 26. Diferencia entre RASPHONE.exe y RASDIAL.exe
- 27. Diferencia entre jQuery.one() y jQuery.on()
- 28. Diferencia entre viewDidLoad y viewDidAppear
- 29. diferencia entre $ .getJSON y $ .get
- 30. ¿Diferencia entre viewbag y viewstate?
¿Puedo preguntar qué pasa con mi argumento? –
@Ritsaert: ¿Estás seguro? Acabo de crear un pequeño archivo BMP lleno de (R, G, B) = (0xFF, 0, 0) y lo miré en la memoria. Ver http://privat.rejbrand.se/hex.png. El byte resaltado es el primer byte de la primera línea de exploración. Para mí, parece que los bytes van BBGGRRBBGGRR ... –
Estoy avergonzado. Estás en lo correcto. El formato para los mapas de bits de 24 bits está en orden BGR. –