Вниз
Скачать: CL | DM;

BitMap с поворотом   Найти похожие ветки 

← →
Леприкон ©   (2003-05-16 16:07) [0]

Подскажите пожалуйста, как можно разместить BitMap на канвасе формы под углом?

Спасибо.


← →
MBo ©   (2003-05-16 16:09) [1]

SetWorldTransform для NT-семейства


← →
Юрий Федоров ©   (2003-05-16 16:16) [2]

А для не NT - Torry.net


← →
MBo ©   (2003-05-16 16:47) [3]

В чате уточнилось - NT

SetGraphicsMode(Canvas.Handle, GM_ADVANCED);
ModifyWorldTranform - MWT_IDENTITY
ModifyWorldTranform - сдвиг на -X, -Y центра поворота MWT_RIGHTMULTIPLY
ModifyWorldTranform - поворот MWT_RIGHTMULTIPLY
ModifyWorldTranform - сдвиг на +X, +Y центра поворота MWT_RIGHTMULTIPLY
BitBlt

Другой путь - PlgBlt (сначала посчитать координаты трех углов повернутой картинки)





← →
Леприкон ©   (2003-05-16 16:55) [4]

Спасибо.


← →
Леприкон ©   (2003-05-19 09:03) [5]

А как BitMap повернуть на 30 градусов не искажая изображения?
Пытаюсь делать так.

procedure BitMapRotate;
var bm:TBitMap;
xf:XFORM;
begin
bm:=TBitMap.Create;
bm.LoadFromFile("e:\logo\l2.bmp");

xf.eM11:=0.866; xf.eM12:=1;
xf.eM21:=1; xf.eM22:=0.5;

SetGraphicsMode(Canvas.Handle, GM_ADVANCED);
ModifyWorldTransform(Canvas.Handle,xf,MWT_RIGHTMULTIPLY);
BitBlt(Canvas.Handle,0,0,bm.Width,bm.Height,bm.Canvas.Handle,0,0,MERGECOPY);

bm.Free;
end;

Но область BitMap просто наклоняется...


← →
Axis_of_Evil ©   (2003-05-19 13:01) [6]

>ModifyWorldTransform(Canvas.Handle,xf,MWT_RIGHTMULTIPLY);
SetWorldTransform?

>xf.eM11:=0.866; xf.eM12:=1;
>xf.eM21:=1; xf.eM22:=0.5;
Уверен?



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
1-13133
Sector
2003-05-25 00:00
2003.06.05
Фрагменты текста в RichEdit разным цветом


14-13444
race1
2003-05-18 13:04
2003.06.05
лета


14-13471
b@nz@i
2003-04-19 06:33
2003.06.05
2 он-лайн проекта


1-13201
Александр
2003-05-27 09:26
2003.06.05
StringGrid


7-13485
Money
2003-04-03 22:37
2003.06.05
Помогите получить информацию с пульта ду.




   Наверх