Bonjour,

Dans le cadre d'un traitement d'image, je souhaite effectuer par exemple un flou gaussien. J'ai donc besoin d'accéder à plusieurs ligne de pixel à la fois, comment puis-je réaliser cela en utilisant la commande scanline?

Voici mon code actuel qui me permet d'accéder aux lignes du bitmap une par une.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
TYPE
  pRGBTripleArray = ^TRGBTripleArray;
  TRGBTripleArray = ARRAY[0..PixelCountMax-1] OF TRGBTriple;
 
var
  BitmapOriginal, BitmapDeReference: TBitmap;
  Row:  pRGBTripleArray;
 
FOR j := 0 TO BitmapDeReference.Height-1 DO
      begin
        Row := BitmapDeReference.Scanline[j];
        FOR i := 0 TO BitmapDeReference.Width-1 DO
        begin
          WITH Row[i] DO
          begin
            rgbtRed   := 255; // pixels jaunes
            rgbtGreen := 255;
            rgbtBlue  :=   0;
          end
        end
      end;
Il me faudrais un truc du genre array of array of pRGBTripleArray mais ca ne marche pas.

D'avance merci,

Pascal.