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

Вниз

Масштабирование изображения   Найти похожие ветки 

 
kirilllius   (2004-01-31 12:04) [0]

И вновь избитый вопрос!
Подскажите, как отмасштабировать большое изображение по экрану, с применением СГЛАЖИВАНИЯ. Те примеры, которые я нашел в Интернете, масштабируют изображение, но не качественно, после масштабирования видны зазубрины, квадратики.
А как сделать масштабирование, чтобы изображение смотрелось идеально четко?


 
MBo ©   (2004-01-31 15:15) [1]

для уменьшения StretchBlt+StretchBltMode c Halftone


 
Mihey ©   (2004-01-31 17:47) [2]

>Те примеры, которые я нашел в Интернете

Плохие примеры видел. Для хорошего масштабирования (оно называется resampling, против некрасивого и искажающего resizing) используют разные библиотеки. Нет смысла писать самому, хотя алгоритмы известны (поэтому и нет смылса).

Библиотеки:

Полегче:
BMP Resampling (http://delphigfx.mastak.ru/lib/bmpresample.rar)

Посложнее:
Graphic32, ImageN, Envision Graphic Library и вообще см. сайт Torry.


 
kirilllius   (2004-01-31 17:52) [3]

Спасибо всем, все попробуем и поищем!


 
kirilllius   (2004-01-31 20:57) [4]

>Mihey

Библиотека

BMP Resampling (http://delphigfx.mastak.ru/lib/bmpresample.rar)

Работает, но с большими изображениями очень медленно, а есть что побыстрее?


 
Mihey ©   (2004-01-31 23:16) [5]

FastLib
http://www.torry.net/vcl/graphics/packs/fastlib.zip

Graphic32
http://www.torry.net/vcl/graphics/packs/g32.zip

ImageEn:
http://www.hicomponents.com/

Значит, давай разберёмся. В былые годы я бы сразу сказал - Graphic32. Я только с ним и работаю. Он удобный, быстрый, очень логичный и понятный, лёгкий в освоении и с прекрасным хелпом. Он ОЧЕНЬ быстро делает маштабирование. Почему же я сомневаюсь? Я не сомневаюсь, но просто этот компонент являет собой как бы поле деятельности. Эта штука ориентирована не на просмотр изображений, а на разного рода работу с ними. Поэтому весь пакет работает с 32-bit битмапами (загруженное конвертит) и не может отображать изображения прозрачно, в том смысле, что компонент просмотра изображений имеет прямоугольную форму задаваемого цвета, а уже на этот цвет, естественно, может накладываться прозрачное изображение. Я не особо в курсе, но по моему это не только в Graphic32 так. Это делается для увеличения скорости. Мне лично ни разу не мешало - делать спрайты из TImage или TImage32 (в Graphic32) - это маразм.

FastLib более легковесна, наверное, более проста, но тоже быстра и без мерцания.

ImageEn - вот компонент просмотра изображений, например, в какой-нибудь смотрелке. Для простых целей - слишком тяжёл. Но увы, он платный (хотя не для всех это проблема).


 
Mantic0re   (2004-02-02 10:18) [6]

2 Mihey:

Все те библиотеки, которые ты указал дают ОТНОСИТЕЛЬНО быстрое масштабирование, однако его не достаточно (даже у ACD See - быстрее) для нормального программного продукта, например коммерческого - все же лучше использовать быстрые алгоритмы.

Я уже говорил - см. исходники Virtual Dub, если не хочешь сам оптимизировать на асме с ММХ и SSE инструкциями.


 
kirilllius   (2004-02-02 12:07) [7]

Спасибо, теперь думаю подберу то, что мне нужно. :-)



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

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

Наверх




Память: 0.48 MB
Время: 0.022 c
7-1079437541
Vintik
2004-03-16 14:45
2004.05.02
проверка существования записи в реестре


1-1081760952
Alexey Chekmezov
2004-04-12 13:09
2004.05.02
Компоненты Delphi


1-1082030490
Назаров Евгений
2004-04-15 16:01
2004.05.02
PChar строка


1-1082229051
[BAD]Angel
2004-04-17 23:10
2004.05.02
PopUpMenu


14-1081411789
uny
2004-04-08 12:09
2004.05.02
какой клиент выбрать?