Форум: "Начинающим";
Текущий архив: 2006.02.26;
Скачать: [xml.tar.bz2];
Вниз
Как наложить один Bitmap на другой? Найти похожие ветки
← →
Alex_C © (2006-02-10 21:59) [0]Есть основной битмат и второй, который надо наложить на основной. Размеры одинаковые. Формат битмапов PixelFormat := pf24bit; - попрошу на это обратить особое внимание!!! С форматом pf4bit проблем нет.
Накладывать надо так - если на втором битмапе точка отличается от черной, то на основном битмапе меняем цвет на цвет этой точки.
Для формата pf4bit я делал так:
for y := 0 to BitMap.Height-1do
begin
Src := Bmp.ScanLine[y];
Dest := BitMap.ScanLine[y];
for x := 0 to BitMap.Width-1 do
begin
//если точка (x, y) на созданном Bitmap не черная,
//то точку (x, y) на исходном Bitmap закрашиваем Bmp
if Src[x] <> 0 then
Dest[x] := Src[x];
end;
end;
Однако с 24-битном формате это не проходит.
← →
MBo © (2006-02-11 07:27) [1]в 24-х битном формате каждый пиксел занимает 3 байта. Кстати, для 4=битного твой пример, если Src и Dst - байтовый тип, некорректен - по 2 пиксела сразу обрабатывает, и удвоенную длину строки.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.02.26;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.035 c