![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблема AnalyzeBmp.Canvas.CopyRect(DestRect,Bitmap.Canvas,Rect); [D7, WinXP]
Satan © (2004-07-20 01:44:00)После копирования AnalyzeBmp начинает работать оооочень медленно (например цикл используюций Scanline каждой строчки изображения для изображения 1280х1024 длится около 2-х минут). В чем может быть дело и как его можно решить? Заранее спасибо!
Огромное Кулясищще (2004-07-20 15:47:00) [1]
> Проверь с bmDIB
Хорошо бы указывать явно PixelFormat. Это сделает то же, что и присвоение bmDIM типу хендла.
Satan (2004-07-20 15:42:00) [2]О спасибо! Заработало!!!
Анонимщик (2004-07-20 15:32:00) [3]Проверь с bmDIB
Satan (2004-07-20 15:01:00) [4]bmDDB
Анонимщик (2004-07-20 14:46:00) [5]Какой у тебя Bitmap.HandleType?
Satan (2004-07-20 14:31:00) [6]Проблема в том, что моя версия дельфи без исходников, поэтому внутри сканлайна ковыряться немогу.
Анонимщик (2004-07-20 14:09:00) [7]Ну так попробуй выяснить, на какой именно операции тормозит
Satan (2004-07-20 14:08:00) [8]т.е. Scanline начинает нереально тормозить.
Satan (2004-07-20 14:07:00) [9]В цикле идет обработка полученного сканлайном массива, но она (обработка) проходит очень быстро(меньше секунды для изображения загруженного методом LoadFromFile), так что проблема именно в обработке изображения полученного копированием указанным выше способом.
Анонимщик (2004-07-20 12:07:00) [10]Лучшее, что ты можешь сделать сам - выяснить причину. Для этого под профайлером каким-нибудь или вручную посмотри, где именно тормоза, поскольку функция GetScanLine много чего может делать.
Или у тебя в цикле и еще что-то делается?