Форум 3DNews
Вернуться   Форум 3DNews > Программирование > Программирование

Ответ Создать новую тему
Опции темы Опции просмотра
Непрочитано 05.01.2005, 19:29   [включить плавающее окно]   #1
Andrewk
Мужской Интересующийся
Автор темы
 
Регистрация: 12.07.2004
Адрес: Новосибирск
Jpg

Всем привет.
Есть некий файл .jpg, его надо загрузить и отмаштабировать(допустим уменьшить ширину и высоту в 3 раза).
потом сохранить.
Делать это надо очень быстро( около 1000 jpg по 3 метра каждый)
Andrewk вне форума  
Конфигурация ПК
Ответить с цитированием
Непрочитано 05.01.2005, 19:49   [включить плавающее окно]   #2
Andron_
Мужской Заслуженный
 
Аватар для Andron_
 
Регистрация: 01.02.2004
Адрес: Новосибирск
Andrewk
Цитата
Делать это надо очень быстро( около 1000 jpg по 3 метра каждый)
А разрешение у фалов 8000*6000?
Самое простое, что приходит мне в голову, загружать рисунок TImage, с Propotional=true, выставив предварительно нужный размер у TImage. А потом сохранять содержимое канвы в файл.
Вот только бдет ли это работать быстро с такими размерами изоброажений, я сильно сомневаюсь.

Andron_ добавил :

Гы... приведенное справедливо для Borland C++Builder
__________________
Дилетант широкого профиля. По совместительству преподаватель С/С++.
Andron_ вне форума  
Конфигурация ПК
Ответить с цитированием
Непрочитано 06.01.2005, 10:04   [включить плавающее окно]   #3
Andrewk
Мужской Интересующийся
Автор темы
 
Регистрация: 12.07.2004
Адрес: Новосибирск
Не тянет
вызываю после маштабирования
BitBlt(bmp.Canvas.Handle,0,0,90,60,Image1.Canvas.Handle,0,0,SRCCOPY);

Can only modify an image if it contains a bitmap.
Чего делать?
Andrewk вне форума  
Конфигурация ПК
Ответить с цитированием
Непрочитано 06.01.2005, 10:30   [включить плавающее окно]   #4
DeaD...Just DeaD
Мужской Продвинутый
 
Регистрация: 09.02.2003
Адрес: Chaos
Andrewk
использовать GDI+
DeaD...Just DeaD вне форума  
Конфигурация ПК
Ответить с цитированием
Непрочитано 06.01.2005, 11:46   [включить плавающее окно]   #5
Johnnie Walker
Опытный
 
Регистрация: 28.04.2004
Bmp.Canvas.StretchDraw(r, Image.Picture.Graphic);
NewJpg.Assign(Bmp);

DeaD...Just DeaD он только в ХР
Johnnie Walker вне форума  
Ответить с цитированием
Непрочитано 06.01.2005, 12:39   [включить плавающее окно]   #6
DeaD...Just DeaD
Мужской Продвинутый
 
Регистрация: 09.02.2003
Адрес: Chaos
Johnnie Walker
он только в ХР
Цитата (MSDN) »
GDI+ can be used in all Windows-based applications. GDI+ is new technology that is included in Windows XP and the Windows Server 2003. It is required as a redistributable for applications that run on the Microsoft Windows NT 4.0 SP6, Windows 2000, Windows 98, and Windows Millennium Edition (Windows Me) operating systems.
DeaD...Just DeaD вне форума  
Конфигурация ПК
Ответить с цитированием
Непрочитано 06.01.2005, 13:00   [включить плавающее окно]   #7
CapOne
Мужской Умудрённый
 
Аватар для CapOne
 
Регистрация: 08.02.2003
Адрес: Новосибирск
Полюбому нужно подходящую библиотеку найти.
__________________
Гайдар и другие экономисты поступили очень просто: представили потребности общества в виде решётки, а затем её сплющили.
CapOne вне форума  
Ответить с цитированием
Непрочитано 06.01.2005, 15:04   [включить плавающее окно]   #8
Andrewk
Мужской Интересующийся
Автор темы
 
Регистрация: 12.07.2004
Адрес: Новосибирск
Johnnie Walker
слишком медленно (более 500мс)
Andrewk вне форума  
Конфигурация ПК
Ответить с цитированием
Непрочитано 06.01.2005, 15:28   [включить плавающее окно]   #9
CapOne
Мужской Умудрённый
 
Аватар для CapOne
 
Регистрация: 08.02.2003
Адрес: Новосибирск
В любом случае придется раскодировать jpeg, потом сжать битмап, потом опять задировать jpeg.
__________________
Гайдар и другие экономисты поступили очень просто: представили потребности общества в виде решётки, а затем её сплющили.
CapOne вне форума  
Ответить с цитированием
Непрочитано 06.01.2005, 15:29   [включить плавающее окно]   #10
DeaD...Just DeaD
Мужской Продвинутый
 
Регистрация: 09.02.2003
Адрес: Chaos
Andrewk
не знаю чем вас не устраивает GDI+
можете попробовать что-то типа IntelJpegLibrary, libjpeg...
DeaD...Just DeaD вне форума  
Конфигурация ПК
Ответить с цитированием
Непрочитано 08.01.2005, 00:30   [включить плавающее окно]   #11
Johnnie Walker
Опытный
 
Регистрация: 28.04.2004
Цитата (Andrewk) »
слишком медленно
Чудес-то не бывает
Johnnie Walker вне форума  
Ответить с цитированием
Непрочитано 13.01.2005, 15:18   [включить плавающее окно]   #12
Barloggg
Мужской Продвинутый
 
Аватар для Barloggg
 
Регистрация: 11.03.2003
Адрес: Тьмутаракань2, лен. обл
хммм.... не уточняется ручками это делать или чтобы было сделано?
Например можно воспользоваться ACDSee... и конвертнуть разом всю директориют...

Но похоже народ понял как ручками. Мне вот под дельфи попалась либа с чтением и записью в jpeg причем шустрая. НО! она под KOL. И скорость хороша и ехе-шник клевый этак 80-90 кб.

да кстати если надо что-то делать быстро, то НЕЛЬЗЯ пользоваться визуальными компонентами (применительно к той же дельфе)
Barloggg вне форума  
Конфигурация ПК
Ответить с цитированием
Ответ Создать новую тему

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 15:19. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 2000-2017 3DNews. All Rights Reserved.
Администрация 3DNews требует соблюдения на форуме правил и законов РФ
Серверы размещены в Hostkey