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

Вниз

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

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

Привет всем!

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

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


 
Martyn   (2002-05-21 12:29) [1]

... забыл добавить: используя WinAPI (скорость очень сильно лимитирует)


 
KilkennyCat ©   (2002-05-22 06:45) [2]

Ну, начнем с того, что WinAPI - не единственное средство повышения скорости (да и не всегда). Можно и по-пикселам. Здесь недавно отвечали о вращении по пикселам. Ну а через Апи - StretchBlt


 
MBo ©   (2002-05-22 08:01) [3]

StretchBlt не вертит на 90, только mirror можно сделать.
кстати, в NT-семействе можно использовать SetWorldTransform,
но в 9X поворот не поддерживается


 
KilkennyCat ©   (2002-05-22 10:58) [4]

Тогда прошу прощения, миррор я делал, но вроде как и вращал тоже... Хорошо, взамен другой совет: воспользоваться GDI+


 
MBo ©   (2002-05-22 12:02) [5]

GDI+
а кто-нибудь уже пользовался? как впечатление?


 
Владимир Васильев ©   (2002-05-22 13:06) [6]

procedure Rotate90( Src: TBitmap32;RotateDir : TRotateDir);
Var
i,j : integer;
Temp : TBitmap32;
W,H : integer;
begin
Temp:=TBitmap32.Create;

try

Temp.SetSize(Src.Height,Src.Width);

W:=Src.Width;
H:=Src.Height;

for i:=0 to W-1 do
for j:=0 to H-1 do

case RotateDir of
rdCW : //


 
KilkennyCat ©   (2002-05-22 14:49) [7]

Я пока только скачал GDI+, прочитал от корки до корки доку (в метро ехал) - она может покруче, чем стандартная. К сожалению, времени нет... :( но вращать она матрицами может.


 
Martyn   (2002-05-23 17:00) [8]

2Всех...

Облазил полИнета, в посиках чего-то подходящего..., кстати поворот по пикселям - слишком долго...

так вот, нашел Unit, который для моих задач подошел от и до, поворот изображения на 90 градусов делается за 2-3 секунды...

если кому надо, могу поделиться...

Игорь


 
MBo ©   (2002-05-23 17:30) [9]

>изображения на 90 градусов делается за 2-3 секунды...
Какого размера твои картинки?!?!?!?!?!?!?!?!?!?!
если программа не будет использоваться на Win9X, делай SetWorldTransform, а если будет, я код со scanline дам



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

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

Наверх




Память: 0.48 MB
Время: 0.017 c
14-73874
MBo
2002-08-25 08:05
2002.09.23
Поздравляю Vad c днем рождения!


14-73887
ded_di
2002-08-29 16:47
2002.09.23
Если все еще нечнго делать


4-73928
ИгорьК
2002-06-25 16:57
2002.09.23
Период бездействия юзера


1-73759
madcap
2002-09-10 19:36
2002.09.23
Не прокручивается текст в RichEdit


1-73605
MikeFW
2002-09-12 11:54
2002.09.23
Изменение цвета в TreeView...