Вниз
Скачать: 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.013 c
14-13427
Sid
2003-05-16 22:48
2003.06.05
QRPreview Hello програмисты помогите мне с этим QRPreview :-]


1-13244
delfin
2003-05-23 14:17
2003.06.05
Подскажите как из string получить PChar


14-13401
Fenik
2003-05-17 21:09
2003.06.05
Куда подевался Мазут?


8-13335
Mihan
2003-02-22 17:28
2003.06.05
как перерисовать экран


6-13359
Is
2003-03-13 18:35
2003.06.05
Кто подскажет ф-цию аналог команды net send




   Наверх