![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Ход программы следующий: берется текстовый файл с цветами пикселей, формируется новый Bitmap и через ScanLine он изменяет
свои цвета в соответствии с цветами из файла. Проблема: сохранив Bitmap, появляются какие-то левые цвета. Вот пример: Было: http://s010.radikal.ru/i314/1606/7b/0c4a3a15bd84.png Стало: http://s018.radikal.ru/i517/1606/21/e4c95ef91a5e.png А вот код: Код:
var
Bitmap: TBitmap;
f: TextFile;
i,j: cardinal;
PScanLineArray: PByteArray;
color: byte;
begin
Bitmap:=TBitmap.Create;
Bitmap.Height:=369;
Bitmap.Width:=328;
Bitmap.PixelFormat:=pf8bit;
AssignFile(f,'Data.txt'); //в f цвета пикселей
Reset(f);
for i:=0 to 368 do
begin
PScanLineArray:=Bitmap.ScanLine[i];
for j:=0 to 328 do
begin
read(f,color);
PScanLineArray[j]:=color;
end;
end;
Image1.Canvas.Draw(0,0,Bitmap);
Bitmap.Free;
CloseFile(f);
end;Файл 10 раз перепроверил. Он был сформирован тоже ScanLine'ом. Битность цветов в файле, соответственно, 8. Последний раз редактировалось Linerath, 15.06.2016 в 04:49. |
|
#2
|
|||
|
|||
|
А что с палитрой?
Может просто не совпадает палитра по умолчанию и то, что ты ожидаешь? ЗЫ. Хорошо бы к таким вопросам прикладывать картинку, а еше лучше - исходный файлик. |