Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > работа с графическими файлами


Автор: vikaz 30.1.2009, 15:23
Всем добрый..... Ребята, подскажите, как программно можно работать с графическими файлами (bmp, jpg, gif). Меня интересует, как можно уменьшить размер холста, как уменьшить качество для формата jpg и т.д. и т.п.? Это все мне нужно для того, чтобы программа, сама подгоняла любые изображения под мой стандарт.

Автор: seawolf 31.1.2009, 12:22
freeimage project работает на ура

Автор: vikaz 31.1.2009, 17:43
это еще что за зверь такой?  Можно подробнее?

Автор: SerK 31.1.2009, 18:14
Вот так можно преобразовать BMP in Jpg и потом сжать в нужной степени.
Здесь у меня сжимается с помощью TrackBar1, который имеет 12 делений


Код

double copmpr=TrackBar1->Position*8.333;
 if(TrackBar1->Position==12) 
{copmpr=100;}
  Form1->SaveDialog->FilterIndex=2;
 TJPEGImage *tJpg=new TJPEGImage;
 if (Form1->SaveDialog->Execute())
  {tJpg->Assign(Form1->bmpPaintOnMe);
   //Степень сжатия (качество) 1..100
   tJpg->CompressionQuality =int(copmpr);
   //Упаковать графику
   tJpg->Compress();
   //И можно сохранить
   tJpg->SaveToFile(Form1->SaveDialog->FileName);
   }
 delete tJpg;

Автор: seawolf 1.2.2009, 10:04
http://freeimage.sourceforge.net/
http://ru.wikipedia.org/wiki/FreeImage

Если конечно builder поддерживает все те форматы графики, что  и freeimage то нужно использовать builder.

Автор: vikaz 2.2.2009, 10:15
Всем спасибо!!!!!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)