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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.10.2015, 10:37   #11
FaTaL
Участник клуба
 
Аватар для FaTaL
 
Регистрация: 09.11.2007
Сообщений: 1,759
По умолчанию

При конвертации из PNG в JPG прозрачный цвет становиться чёрным. Как сделать чтобы он был белым?
Мой код конвертации:
Код:
procedure Tpng2jpgFrm.PNGtoJPG(FileNamePNG: string);
var
  png : TPngImage;
  jpg : TJPEGImage;
  bmp : TBitmap;
begin
  png := TPngImage.Create;
  jpg := TJPEGImage.Create;
  bmp := TBitmap.Create;
  try
    png.LoadFromFile(FileNamePNG);
    bmp.Assign(png);
    jpg.Assign(bmp);
    jpg.SaveToFile(FileNamePNG + '.jpg');
  finally
    png.Free;
    jpg.Free;
    bmp.Free;
  end;
end;
FaTaL вне форума Ответить с цитированием
Старый 30.10.2015, 11:25   #12
Filka
Форумчанин
 
Регистрация: 29.10.2015
Сообщений: 272
По умолчанию

Код:
    png.LoadFromFile(FileNamePNG);
    bmp.Canvas.Brush.Color := RGB(255, 0, 255); // нужный цвет
    bmp.Width := png.Width;
    bmp.Height := png.Height;
    png.Draw(bmp.Canvas, bmp.Canvas.ClipRect);
    jpg.Assign(bmp);
    jpg.SaveToFile(ChangeFileExt(FileNamePNG, '.jpg'));
?

Последний раз редактировалось Filka; 30.10.2015 в 11:32.
Filka вне форума Ответить с цитированием
Старый 02.11.2015, 10:42   #13
FaTaL
Участник клуба
 
Аватар для FaTaL
 
Регистрация: 09.11.2007
Сообщений: 1,759
По умолчанию

Filka, Спасибо большое. Только вот тут надо было 255:
RGB(255, 255, 255);
А то фон каким то розовым получался при 0.
FaTaL вне форума Ответить с цитированием
Старый 02.11.2015, 11:24   #14
Filka
Форумчанин
 
Регистрация: 29.10.2015
Сообщений: 272
По умолчанию

Пожалуйста.
Цитата:
Только вот тут надо было 255:
RGB(255, 255, 255);
А то фон каким то розовым получался при 0.
Это я просто в качестве примера...
Filka вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Bitmap _-Re@l-_ Мультимедиа в Delphi 2 21.07.2010 19:08
Ковертирование из png 24 бит в png 8 бит isat Общие вопросы .NET 0 22.03.2010 13:38
из-за чего появляется полоса (на скрине) при вставке BitMap в TImage? - Проблема с Bitmap Grey@2009 Мультимедиа в Delphi 2 02.01.2010 20:23
Bitmap? HunterMan Общие вопросы .NET 7 27.12.2008 19:02
Bitmap Is Vaild TaTT DoGG БД в Delphi 2 02.05.2008 04:05