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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.02.2011, 05:38   #1
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
Стрелка Ищу компонент конвертер(Bmp, Png, Tif, Gif...) в Jpeg

хочу конвертировать изображения любого формата в Jpeg
в принципе знаю как ето делать, но может кто знает компонент конвертер?
и еше, правельно ли работать с Jpeg а не Bmp, с точки зрения економии аперативнои памяти,
их у меня будет много, а зжимать нельзя
VirusN13
ArtGrek вне форума Ответить с цитированием
Старый 28.02.2011, 08:23   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Конвертеров особых не знаю, но в библиотеке GDI+ есть функции "конвертации". Используй ее и будет тебе счастье.
Цитата:
правельно ли работать с Jpeg а не Bmp, с точки зрения економии аперативнои памяти,
ИМХО, разжимать их в пиксели придется все равно...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 28.02.2011, 20:32   #3
xexxex
Пользователь
 
Регистрация: 31.07.2010
Сообщений: 52
По умолчанию

Обычно при добавлении соответствующего модуля в uses "нормальный" класс (TPngImage, TTiffImage, TCDRImage, T***Image, etc) наследован от TGraphic, и добавляет себя в стандартный класс TPicture.
Если это так, то все просто.
Код:
uses
  Jpeg;

procedure ConvertGraphic(const FileName: String; Jpeg: TJPEGImage); overload;
begin
  with TPicture.Create do try
    LoadFromFile(FileName);
    Jpeg.Assign(Graphic);
  finally
    Free;
  end;
end;

procedure ConvertGraphic(Graphic: TGraphic; Jpeg: TJPEGImage); overload;
begin
  Jpeg.Assign(Graphic);
end;
xexxex вне форума Ответить с цитированием
Старый 28.02.2011, 20:41   #4
Obey-Kun
Линуксоид
Участник клуба
 
Аватар для Obey-Kun
 
Регистрация: 31.07.2009
Сообщений: 1,403
По умолчанию

JPEG это отвратительный формат. Конвертируй лучше в PNG. В джепеге нет смысла ничего хранить в наши дни.
Я схожу с ума или это глючит реальность?
Jabber ID: obey@obey.su
Obey-Kun вне форума Ответить с цитированием
Старый 28.02.2011, 20:47   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
JPEG это отвратительный формат.
Почему? Что ты предложишь?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 01.03.2011, 01:26   #6
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
По умолчанию

Цитата:
JPEG это отвратительный формат
к сожелению все известные фотоапараты сохраняют в таком формате, так что вот такая у нас отвратительная жизнь
VirusN13
ArtGrek вне форума Ответить с цитированием
Старый 01.03.2011, 05:51   #7
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

Вот, кстати, сегодня сам искал похожее. Работает на основе GDI+.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 01.03.2011, 08:31   #8
xexxex
Пользователь
 
Регистрация: 31.07.2010
Сообщений: 52
По умолчанию

veniside - зачетный архивчик!
Там только в модуле SynGdiPlus.pas надо закоментить строчку {$define NOTSYNPICTUREREGISTER},
чтобы в TImage, TPicture, TOpenSavePictureDialog стали поддерживать форматы 'jpg','jpeg','png','gif','tif','tif f'
Вот и все! Можно конвертировать в три строчки кода как в посте #3

Прилагаю еще два модуля. Тоже их просто добавить в uses и появится поддержка форматов WBMP и PCX
Вложения
Тип файла: rar ExF.rar (5.6 Кб, 84 просмотров)

Последний раз редактировалось xexxex; 01.03.2011 в 08:56.
xexxex вне форума Ответить с цитированием
Старый 01.03.2011, 11:14   #9
x128
Форумчанин
 
Регистрация: 03.02.2010
Сообщений: 178
По умолчанию

Цитата:
хочу конвертировать изображения любого формата в Jpeg
Jpeg поддерживает только RGB т.ч. "любого формата" не выйдет, есть форматы с палитрой, альфа-каналом, анимацией, многослойные и многостраничные.
Цитата:
к сожелению все известные фотоапараты сохраняют в таком формате
Ключевое слово "фотоаппараты", Jpeg предназначен исключительно для фото и для другого типа графики он абсолютно не подходит, к сожалению, большинство считает (по непонятным мне причинам) этот формат лучшим для хранения любой графики, что совсем не так.

Какая цель стоит кроме как "хочу конвертировать"?
x128 вне форума Ответить с цитированием
Старый 01.03.2011, 11:27   #10
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

OFFTOP >
Цитата:
к сожелению все известные фотоапараты сохраняют в таком формате
на самом деле все фотоаппараты формируют изначально в RAW, просто потом идет на постообработку в контроллер и не во всех предусмотрен вывод в сыром виде, т.е. "до".
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Конвертер из png в jpg или gif или bmp Квэнди Мультимедиа в Delphi 8 04.10.2011 22:26
tif в bmp MaxNik2009 Общие вопросы Delphi 6 10.05.2011 14:06
есть ли компонент,чтобы иметь прямой доступ к пикселям jpeg без конвертирования в bmp? Dima_Dima Свободное общение 1 26.05.2010 19:00
есть ли компонент,чтобы иметь прямой доступ к пикселям jpeg без конвертирования в bmp? Dima_Dima Компоненты Delphi 14 26.05.2010 18:30
jpeg,gif файлы counter Win Api 5 01.02.2009 23:02