Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.10.2007, 09:35   #1
devi409
Пользователь
 
Регистрация: 28.12.2006
Сообщений: 75
По умолчанию Корректное масштабирование рисунка

Такой вопрос...
У меня имеется растровое изображение (много изображение). Необходимо сделать эскизы в уменьшеном виде.
Проблема в том что обычное масштабирование уберает (срезает) пиксели. Как сделать плавный переход.
К примеру как в стандартном просмоторщике виндузы.
devi409 вне форума Ответить с цитированием
Старый 18.10.2007, 09:41   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
Проблема в том что обычное масштабирование уберает (срезает) пиксели
Как делаешь?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 18.10.2007, 10:06   #3
devi409
Пользователь
 
Регистрация: 28.12.2006
Сообщений: 75
По умолчанию

Picture.Bitmap.Canvas.CopyRect(imag e1.ClientRect,image1.Canvas,image1. ClientRect)
Либо так либо ставлю сыойство stretch = true; - но это просто отображение а мне необходимо в другой битмап
devi409 вне форума Ответить с цитированием
Старый 18.10.2007, 10:11   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

пользуй Picture.Bitmap.Canvas.StretchDraw() ;
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 18.10.2007, 10:47   #5
devi409
Пользователь
 
Регистрация: 28.12.2006
Сообщений: 75
По умолчанию

он использует сглаживание?
devi409 вне форума Ответить с цитированием
Старый 18.10.2007, 10:50   #6
devi409
Пользователь
 
Регистрация: 28.12.2006
Сообщений: 75
По умолчанию

Мне бы сам алгоритм сглаживания

а Stretch работает лучше чем copy но у него помоему нет сглаживания и поэтому он всеравно удаляет линии пиксилей

Последний раз редактировалось devi409; 18.10.2007 в 10:59.
devi409 вне форума Ответить с цитированием
Старый 18.10.2007, 11:10   #7
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
По умолчанию

ну если пикселей становится меньше .. приходится что-то удалять )
Берегите друг друга!
Virtson вне форума Ответить с цитированием
Старый 18.10.2007, 11:33   #8
devi409
Пользователь
 
Регистрация: 28.12.2006
Сообщений: 75
По умолчанию

К примеру в фотошопе пиксели удаляются но и производится сглаживание... поэтому при изменении размера, рисунок не сильно теряет качество.
devi409 вне форума Ответить с цитированием
Старый 18.10.2007, 12:53   #9
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

в архиве сравнение двух стандартных StretchBlt (WinAPI) и StretchDraw (VCL), и исходный код еще одного алгоритма масштабирования
Вложения
Тип файла: rar stretch.rar (7.7 Кб, 656 просмотров)
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 19.10.2007, 05:41   #10
devi409
Пользователь
 
Регистрация: 28.12.2006
Сообщений: 75
По умолчанию

ВОТ ЭТО ДА!!!
Просто класс... не знал что средствами виндузы такое можно замутить...
супер...
devi409 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
масштабирование изображения Alex_Pro Общие вопросы .NET 0 25.05.2008 09:09
масштабирование Alex_Pro Общие вопросы .NET 0 21.05.2008 18:21
Корректное закрытие MessageBox Tan4ik Помощь студентам 4 02.05.2008 01:21
масштабирование lenivec Общие вопросы Delphi 1 23.02.2008 07:07
Масштабирование Формы SERG1980 Общие вопросы Delphi 1 28.03.2007 12:28