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

Вниз

Фрагмент изображения   Найти похожие ветки 

 
Alexander Vasjuk   (2003-03-13 19:34) [0]

Мастера, для вас вопрос.
Имеется огромный графический файл. Очень долго грузится.

Необходимо просмотреть его очень маленький фрагмент.

Есть ли для этого быстрый способ?

Желательно конечно оставить его в сжатом формате (TIFF, JPEG), а то развернутый займет пару гигов. Впрочем, главное быстродействие, и если большой размер будет единственной возможностью, ускорения, пусть будет так.


 
Alexander Vasjuk   (2003-03-13 19:42) [1]

А?


 
kDenis ©   (2003-03-13 19:59) [2]

А у меня похожая ситуация назревает... (в смысле, ответ я пока не искал)
У меня битмэп 32x2240 в переменную TBitMap загружается...
Нужно разбить его на куски размером 32x32 и поместить в отдельные переменные...


 
kDenis ©   (2003-03-13 20:56) [3]

Что в этот раз? Никто не знает, или всем надоело обяснять?


 
MBo ©   (2003-03-13 22:06) [4]

>Alexander Vasjuk
Какие Windows?


 
Jeer ©   (2003-03-14 00:43) [5]

Alexander Vasjuk (13.03.03 19:34)

Сам подумай.
Сжатие - своего рода перемешивание. Чтобы выделить часть первоначального из сжатого, надо сжатое привести в первоначальный вид, а для этого, как правило, нужно оперировать всем объемом.


 
MBo ©   (2003-03-14 07:06) [6]

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

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


 
OxOTHuK   (2003-03-14 07:17) [7]

а будет ли рационально в нескольких потоках читать определенные части картинки??
И как читать из битмапа строки? я пока себе плохо представляю.


 
MBo ©   (2003-03-14 07:55) [8]

>OxOTHuK
1) Нерационально
2) изучи структуру битмапа. Исходники VCL помогут


 
Alexander Vasjuk   (2003-03-14 14:07) [9]

Огромное спасибо откликнувшимся!
Продолжаем разговор...

MBo © (13.03.03 22:06)
98, 2000 и ХР

Jeer © (14.03.03 00:43)
Я понимаю, что сжатие это искажение. Но может есть способ неполной раскодировки...

MBo © (14.03.03 07:06)
Это мой дежурный вариант (хранить фрагменты раздельно и по 4 клеить ипоказывать).
Некрасиво, согласись. Хотя реализабельно.

OxOTHuK (14.03.03 07:17)
Рационально в разных потоках на мультипроцессорных системах.
А читать легко - несжатый битмап есть образ массива.
Но будет ли это быстро работать?
Надо попробовать.

MBo © (14.03.03 07:55)
Проще сделать raw данные и работать как файлом прямого доступа.

Итак. Пока реальны 2 способа:
1. Разбить изображение на много сжатых картинок.
2. Построчно тянуть из битмапа нужный фрагмент.

Никаких больше предложений (в т.ч. бредовых) не будет?
Нечто среднее. Чтоб и файл маленький и достать быстро...


 
Alexander Vasjuk   (2003-03-14 14:49) [10]

Забыл моленькую деталь.
Фрагменты могут отличаться по размеру (масштаб)



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

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

Наверх




Память: 0.49 MB
Время: 0.017 c
14-88133
Romkin
2003-03-12 16:36
2003.03.27
А вот и задачка :-))


14-88210
Феликс
2003-03-11 17:47
2003.03.27
Если бы у вас вдруг появился халявный инет вы бы что делали?


1-88019
DrFaust
2003-03-14 12:29
2003.03.27
Изменение размера формы


3-87788
Спрашивающий
2003-03-12 00:51
2003.03.27
InterBase Server


1-87948
[BAD]Angel
2003-03-17 14:57
2003.03.27
Как узнать если курсор покинул PopupMenu?