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

Проблема AnalyzeBmp.Canvas.CopyRect(DestRect,Bitmap.Canvas,Rect);   Найти похожие ветки 

 
Satan ©   (2004-07-20 01:44) [0]

После копирования AnalyzeBmp начинает работать оооочень медленно (например цикл используюций Scanline каждой строчки изображения для изображения 1280х1024 длится около 2-х минут). В чем может быть дело и как его можно решить? Заранее спасибо!


 
Анонимщик ©   (2004-07-20 12:07) [1]

Лучшее, что ты можешь сделать сам - выяснить причину. Для этого под профайлером каким-нибудь или вручную посмотри, где именно тормоза, поскольку функция GetScanLine много чего может делать.
Или у тебя в цикле и еще что-то делается?


 
Satan ©   (2004-07-20 14:07) [2]

В цикле идет обработка полученного сканлайном массива, но она (обработка) проходит очень быстро(меньше секунды для изображения загруженного методом LoadFromFile), так что проблема именно в обработке изображения полученного копированием указанным выше способом.


 
Satan ©   (2004-07-20 14:08) [3]

т.е. Scanline начинает нереально тормозить.


 
Анонимщик ©   (2004-07-20 14:09) [4]

Ну так попробуй выяснить, на какой именно операции тормозит


 
Satan ©   (2004-07-20 14:31) [5]

Проблема в том, что моя версия дельфи без исходников, поэтому  внутри сканлайна ковыряться немогу.


 
Анонимщик ©   (2004-07-20 14:46) [6]

Какой у тебя Bitmap.HandleType?


 
Satan ©   (2004-07-20 15:01) [7]

bmDDB


 
Анонимщик ©   (2004-07-20 15:32) [8]

Проверь с bmDIB


 
Satan ©   (2004-07-20 15:42) [9]

О спасибо! Заработало!!!


 
Огромное Кулясищще ©   (2004-07-20 15:47) [10]


> Проверь с bmDIB

Хорошо бы указывать явно PixelFormat. Это сделает то же, что и присвоение bmDIM типу хендла.



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

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



Память: 0.47 MB
Время: 0.02 c
4-1093868502
Ascan
2004-08-30 16:21
2004.10.10
Как на экране "подвинуть" чужое Окно?


3-1095248749
sirsergio
2004-09-15 15:45
2004.10.10
Как подавить изменение курсора во время выполнения SQL запроса


1-1096159405
Leaner
2004-09-26 04:43
2004.10.10
Ошибка: C0000008 в строке CloseHandle(FHand);


14-1095832509
Mrd
2004-09-22 09:55
2004.10.10
Исходник браузера


1-1095303974
Kair()
2004-09-16 07:06
2004.10.10




   Наверх