Главная страница
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.06 c
14-1081175612
WebErr
2004-04-05 18:33
2004.05.02
Выбираю путер


14-1081793801
Шишкин Илья
2004-04-12 22:16
2004.05.02
Посоветуйте хостинг


7-1078495714
Islander
2004-03-05 17:08
2004.05.02
Как определить, установлен ли на компьютере Windows Media Player?


1-1082289800
Роман К.
2004-04-18 16:03
2004.05.02
Как сохранить выделенный текст из TRichEdit в файл?


9-1068995883
m2003
2003-11-16 18:18
2004.05.02
Flip (0, DDFLIP_WAIT) возвращает DDERR_SURFACEBUSY