Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.06.03;
Скачать: CL | DM;

Вниз

вопрос по повороту Bitmap   Найти похожие ветки 

 
Martyn   (2002-05-21 12:57) [0]

Привет всем!

подскажите, как повернуть изображение физически в файле на 90 градусов: т.е.

dest.width := source.height;
dest.height := source.width;
dest.pixelformat := source.pixelformat;
dest.pallete := source.palette;


и желательно через WinAPI - скорость очень лимитирует


 
MBo ©   (2002-05-21 13:01) [1]

ScanLine или GetDiBits/SetDiBits


 
Martyn   (2002-05-21 13:25) [2]

2MBo

а живой код можно увидеть...:)))) буду признателен


 
MBo ©   (2002-05-21 13:38) [3]

со ScanLine или GetDiBits/SetDiBits?


 
Martyn   (2002-05-21 14:20) [4]

2MBo

c GetDiBits/SetDiBits

API все-таки быстрее работает


 
MBo ©   (2002-05-21 14:31) [5]

это как дело с getdibits иметь. более полный пример с setdibits
я в форуме давал, но поиск не работает
procedure TForm1.Button2Click(Sender: TObject);
var b:tbitmap;
a:array[0..9,0..9] of TRGBQuad;
s:string;
info:tbitmapinfo;
i,j:integer;
begin
b:=tbitmap.create;
b.PixelFormat:=pf24bit;
b.width:=10;
b.height:=10;
b.Canvas.moveTo(0,0);
b.Canvas.LineTo(6,6);
with info.bmiHeader do begin
biWidth:=b.Width;
biHeight:=b.Height;
biSize:=SizeOf(TBITMAPINFOHEADER);
biCompression:=BI_RGB;
biBitCount:=32;
biPlanes:=1;
biSizeImage:=((biWidth*biBitCount+31)div 32)*biHeight*4;//Не обязательно для 24-бит
end;
GetDIBits(b.canvas.handle, B.Handle, 0,B.Height,@a,Info,DIB_RGB_COLORS);
for i:=0 to 9 do begin
s:="";
for j:=0 to 9 do s:=s+inttohex(a[i,j].rgbRed,2)+" ";
memo1.lines.add(s);
end;
image1.picture.assign(b);
b.free;
end;



Страницы: 1 вся ветка

Текущий архив: 2002.06.03;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
1-7080
onix
2002-05-22 09:17
2002.06.03
Что то не ладится с TRegistry.Посмотрите пожалуйста где заковыка


14-7166
Sergo
2002-04-24 13:35
2002.06.03
eBay


14-7162
Борис
2002-04-24 13:44
2002.06.03
Помогите решить задачи по теории вероятности


7-7240
Митя
2002-03-10 18:20
2002.06.03
Помогите начинающему программисту


1-7082
Corte ™
2002-05-22 09:12
2002.06.03
Помогите!!!