Перейти к содержанию
Fire Monkey от А до Я
  • 0

Программно применить TransparentColor


denprox

Вопрос

Всем привет! Подскажите, как программно применить TransparentColor для TImage которые динамически создаются. 

Пишу так, но эффекта ноль...

MultiResBitmap.TransparentColor := TColorRec.White;

p.s. фотошоп не предлагать, нужно именно указать цвет прозрачности 

Ссылка на комментарий

Рекомендуемые сообщения

  • 0

Решение найдено:

 

procedure SetTransparent(oBmp: TBitmap);
var
  bmpData: TBitmapData;
  colorToMakeTransparent: TAlphaColor;
  transparentColor: TAlphaColor;
  color: TAlphaColor;
  x,y: Integer;
begin
  oBmp.Map(TMapAccess.ReadWrite, bmpData);
 
  colorToMakeTransparent := bmpData.GetPixel(0,0);
  transparentColor := $00000000;
 
  for x := 0 to bmpData.Width do
  begin
    for y := 0 to bmpData.Height do
    begin
      color := bmpData.GetPixel(x,y);
      if (color = colorToMakeTransparent) then
        bmpData.SetPixel(x,y,transparentColor);
    end;
  end;
 
  oBmp.Unmap(bmpData);
end;
 
procedure TForm1.Button1Click(Sender: TObject);
var
  img: TImage;
begin
  img := TImage.Create(Self);
  with img do
  begin
    Parent := Self;
    Position.X := 136;
    Position.Y := 16;
    Width := 257;
    Height := 321;
    Bitmap.LoadFromFile(ExtractFilePath(ParamStr(0))+'123.png');
   SetTransparent(Bitmap);
  end;
end;

 

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...