Конференция "Media" » Из массива в пиксельное отображение
 
  • E32 (01.04.10 15:12) [0]
    Есть массив в котором генерируются цвета пикселей, как теперь мне это дело сохранить в картинку? Можно примеры или исходники.. Желательно быстрые методы, так как массивы зачастую будут носить обширные графики, где каждая линия или точка обозначена своим цветом.
  • antonn © (01.04.10 16:19) [1]
    tbitmap + scanline
  • E32 (01.04.10 16:32) [2]
    например? а можно без визуалки, чтоб просто сохранялось в файл?
  • antonn © (01.04.10 16:43) [3]
    tbitmap это по сути тот же самый массив, только умеет сохраняться в файл
  • CrytoGen (01.04.10 17:03) [4]
    SetBitmapBits посмотри
  • E32 (01.04.10 17:09) [5]
    Работает. Теперь как можно задать цвет каждому пикселю? а то все монохромно.
     Arrow: array[0..31, 0..3] of BYTE =
     { 0}(($00, $00, $80, $35), {00000000 00000000 10000000 00000000}
       { 1}($00, $00, $C0, $62), {00000000 00000000 11000000 00000000}
       { 2}($00, $00, $E0, $74), {00000000 00000000 11100000 00000000}
       { 3}($00, $00, $F0, $25), {00000000 00000000 11110000 00000000}
       { 4}($00, $00, $F8, $74), {00000000 00000000 11111000 00000000}
       { 5}($00, $00, $FC, $52), {00000000 00000000 11111100 00000000}
       { 6}($00, $00, $FE, $74), {00000000 00000000 11111110 00000000}

    var
     i: INTEGER;
     j: INTEGER;
     Row: pByteArray;
    begin
     for j := 0 to Bitmap.Height - 1 do
     begin
       Row := pByteArray(Bitmap.Scanline[j]);
       for i := 0 to (Bitmap.Width div BitsPerPixel) - 1 do
       begin
         Row[i] := arrow[j, i]
       end
     end;

      Bitmap.SaveToFile('c:\13.bmp');
    end;

  • E32 (01.04.10 17:22) [6]
    разобрался.  PixelFormat := pf32bit;
 
Конференция "Media" » Из массива в пиксельное отображение
Есть новые Нет новых   [120043   +84][b:0][p:0.001]