Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.03.28;
Скачать: CL | DM;

Вниз

Как с помощью делфи уменьшить вес фотки   Найти похожие ветки 

 
sava   (2010-01-04 21:50) [0]

Как с помощью делфи уменьшить вес фотки?Фотки в среднем весят 10-15 мб и DVD их плохо грузит. Где копать надо???


 
TIF ©   (2010-01-05 15:01) [1]

Программно пересохранить в более подходящем формате?
А ещё можно оптимизировать и этот формат?

Всё это позволяет сделать и сторонний специализированный софт

Цель какая: именно программно через Delphi это научиться делать или тупо решить для себя одноразовую бытовую задачу?


 
KilkennyCat ©   (2010-01-05 15:02) [2]

Обязательно с помощью делфи? xnview бесплатен, качествен и прекрасно работает с пакетной обработкой


 
Marser ©   (2010-01-05 15:03) [3]

Microsoft Office Picture Viewer :-)


 
MBo ©   (2010-01-05 15:17) [4]


program x4;

uses SysUtils, Classes, Graphics, Jpeg;

var
 j: TJpegImage;
 b: TBitmap;
 i: Integer;
 FileName: string;
 List: TStringList;
 SR: TSearchRec;

 procedure Convert(const FileName:string);
 begin
   j.LoadFromFile(FileName);
   b.Assign(j);
   j.Assign(b);
   j.SaveToFile("x4_"+FileName);
 end;

begin
 j := TJpegImage.Create;
 j.Scale := jsQuarter;
 b := TBitmap.Create;
 if ParamCount = 0 then begin
   List := TStringList.Create;
   if FindFirst("*.jpg", faAnyFile, SR) = 0 then begin
     repeat
       List.Add(SR.Name);
     until FindNext(SR) <> 0;
     FindClose(SR);
   end;
   for i := 0 to List.Count - 1 do
     Convert(List[i]);
   List.Free;
 end
 else
   for i := 1 to ParamCount do begin
     FileName := ParamStr(i);
     if FileExists(FileName) and
       (LowerCase(ExtractFileExt(FileName)) = ".jpg") then
         Convert(FileName);
   end;
 j.Free;
 b.Free;
end.



 
Кто б сомневался ©   (2010-01-05 17:44) [5]

IrfanView - умеет делать качественную обработку - это просмоторщик. Бесплатная прога.

Причем здесь Delphi (С++,C# и др. языки) и "Фотки в среднем весят 10-15 мб и DVD их плохо грузит"


 
Jeer ©   (2010-01-05 18:05) [6]


> Кто б сомневался ©   (05.01.10 17:44) [5]
> Причем здесь Delphi (С++,C# и др. языки)


Ну как - сапожник, наконец дошел до своих сапогов.
Устал он от собственного участия в развитии ACDSee, понимашь..


 
vuk ©   (2010-01-05 19:17) [7]

to MBo ©   (05.01.10 15:17) [4]:
Кстати, о птичках.

>j := TJpegImage.Create;

TJpegImage корежит цвета так, что аж на глаз заметно.


 
MBo ©   (2010-01-05 19:52) [8]

>vuk ©   (05.01.10 19:17) [7]
Я предполагаю, что  Scale := jsQuarter подразумевает простое преобразование без пересчета цветов. Но в тонкостях не разбирался.


 
vuk ©   (2010-01-05 20:01) [9]

to MBo ©   (05.01.10 19:52) [8]:
Я не по поводу данного примера, а вообще. Scale ни при чем. Я, когда понадобилось найти более-менее нормальную библиотеку для обработки изображений, всяких реализаций много перебрал. Во многих случаях были те же проблемы (видимо какие-то косяки в алгоритмах кочуют из библиотеки в библиотеку). В конечном итоге остановился на GFL SDK: http://www.xnview.com/en/gfl.html


 
Джо ©   (2010-01-05 20:02) [10]


> vuk ©

Может, внедренный цветовой профиль не учитывают?


 
Jeer ©   (2010-01-05 20:08) [11]


> vuk ©   (05.01.10 20:01) [9]
Во многих случаях были те же проблемы..


Даже с ijl*.dll ?


 
vuk ©   (2010-01-05 20:09) [12]

to Джо ©   (05.01.10 20:02) [10]:
>Может, внедренный цветовой профиль не учитывают?
Профиль тоже ни при чем. Имеем два изображения без профилей, после загрузки в TJpegImage и сохранения в другой файл имеем разные цвета (у меня особенно на ярко-красных цветах заметно было).
То же самое, но при помощи GFL - все нормально с цветами.


 
vuk ©   (2010-01-05 20:18) [13]

to Jeer ©   (05.01.10 20:08) [11]:
>Даже с ijl*.dll ?
Ет хто? :)
Если честно, не попадалось. Я в первую очередь рассматривал реализации на Delphi. Навскидку сейчас помню (давно было) только Envision Image Library, но что-то еще смотрел. Потом плюнул и взял GFL. Оттуда еще и масштабирование с шарпингом заюзались до кучи.


 
Jeer ©   (2010-01-05 20:24) [14]

Ну.. как бы, это хорошо известная Intel JPeg Library. Не знаю как сейчас дела обстоят ( наверняка лучше ), но для своего времени была фишкой по скорости.

Free до ijl15.dll, пока не сделали платной. Как-то так.

Использовали ее многие Delphi-библиотеки, например, FastLib.


 
vuk ©   (2010-01-05 20:34) [15]

to Jeer ©   (05.01.10 20:24) [14]:
Ну, значит не дошла до неё в то время очередь. Остановился на первом, что нашел и что подошло под решаемую задачу.


 
Jeer ©   (2010-01-05 20:43) [16]

Глянул setup v.1.51 - 2001 г.
Есть релизы отдельной ijl15.dll на 2003 г.

Потом все это перетекло в платную ISPL ( Intel Signal Processing Library )


 
Sava   (2010-01-07 10:21) [17]

Спасибо за советы обязательно попробую. А цель очень проста 1) развить свои знания и способности 2)фоток  640 шт и если каждую открывать в ручную то мышка может сдохнуть а на пальце будет большой мазоль...


 
Empleado ©   (2010-01-07 14:42) [18]


> 2)фоток  640 шт и если каждую открывать

Microsoft Office Picture Manager --> Compress Pictures прекрасно справляется с этой задачей



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

Текущий архив: 2010.03.28;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.004 c
2-1264056255
Elafor
2010-01-21 09:44
2010.03.28
СНОВА INSERT


2-1264099254
lamer6666
2010-01-21 21:40
2010.03.28
SMS центр


2-1264024785
novichek
2010-01-21 00:59
2010.03.28
Dword в Record


2-1264114096
Евгений Р.
2010-01-22 01:48
2010.03.28
Как изменить свойство Required поля Access


2-1264136473
Дмитрий С
2010-01-22 08:01
2010.03.28
Регистр букв в AutoComplete в TComboBox





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