Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Media";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.035 c
7-1078480227
Вадим
2004-03-05 12:50
2004.05.02
"Мой компьютер"


7-1078580326
KME
2004-03-06 16:38
2004.05.02
Работа с дискетами


3-1081239661
Akmen
2004-04-06 12:21
2004.05.02
Как избавиться от Too many open files?


1-1082113298
Ш-К
2004-04-16 15:01
2004.05.02
Word "Параметры сраницы"


14-1081422070
Ivolg
2004-04-08 15:01
2004.05.02
С++





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский