Вниз
Скачать: 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
8-13333
_MAD_
2003-02-15 23:07
2003.06.05
вывод звука на саундкарту


1-13166
Сюткин Павел
2003-05-24 09:49
2003.06.05
Версия MS Office


1-13120
Checist [root]
2003-05-25 18:59
2003.06.05
WinApi возвращается !


9-12989
dinAlt
2002-12-17 17:21
2003.06.05
DelphiX


1-13169
super_alex
2003-05-26 15:38
2003.06.05
Как очистить TPainBox




   Наверх