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

Вниз

SavePictureDialog и сохранение.   Найти похожие ветки 

 
Дмитрий С ©   (2012-03-27 19:03) [0]

Есть Bmp: TBitMap;
Есть SavePictureDialog с автоматически сформированным фильтром. Вопрос как сохранить Bmp в файл того формата, который выбран в SavePictureDialog ?


 
brother ©   (2012-03-27 19:32) [1]

перед записью конвертировать? или о чем ты?


 
Дмитрий С ©   (2012-03-27 19:40) [2]


> brother ©   (27.03.12 19:32) [1]
> перед записью конвертировать? или о чем ты?

Об этом. По расширению догадываться какой формат требуется и в соответствии с ним конвертировать.
А вопрос в том, есть ли уже готовый механизм, который делает это? При открытии, например, TPicture сам догадывается какой формат


 
Dimka Maslov ©   (2012-03-27 21:49) [3]

1. Создаём абстрактный класс "записыватель"
2. Создаём его потомки "записыватели в отдельный формат"
3. Создаём объекты классов-потомков
4. Создаём TStringList c поддерживаемыми расширениями. В Objects этого массива записваем указатели на объекты.
5. Сортируем
6. Для поиска нужного записывателя пользуемся IndexOf(ExtractFileExt(SavePictureDialog.FileName))


 
brother ©   (2012-03-27 21:57) [4]

> например, TPicture сам догадывается какой формат

Ты его генофонд смотрел?

> есть ли уже готовый механизм, который делает это?

нет, ибо поддержку всех графических форматов тяжко реализовать, да и не нужно это...



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

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

Наверх




Память: 0.45 MB
Время: 0.068 c
15-1348161804
ClawClaw
2012-09-20 21:23
2013.03.22
Глюк в Сапёре? (Windows 7)


2-1335103508
Gedimen
2012-04-22 18:05
2013.03.22
Коряво работает свой компоннет на основе TEdit


15-1346782032
vuk
2012-09-04 22:07
2013.03.22
Плавали по морю мимо Кольского


3-1281098029
Patrick
2010-08-06 16:33
2013.03.22
Связанные сервера Oracle


15-1345031945
Рекрут
2012-08-15 15:59
2013.03.22
Как поменять маленькую иконку без VCL?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский