[prev in list] [next in list] [prev in thread] [next in thread]
List: wine-devel
Subject: Re: [PATCH 2/2] comctl32: Paint 32-bpp bitmaps with an alpha channel using GdiAlphaBlend.
From: Dmitry Timoshkov <dmitry () baikal ! ru>
Date: 2019-05-31 13:18:32
Message-ID: 20190531211832.308677233b3bed7a527b4efb () baikal ! ru
[Download RAW message or body]
Alexandre Julliard <julliard@winehq.org> wrote:
> >> >> My question was whether it's drawn with transparency in that case, since
> >> >> it's not really specified in which cases a DDB is considered to have an
> >> >> alpha channel.
> >> >
> >> > In order to draw it with a transparency it's necessary to create a 32-bpp
> >> > DIB section, copy source bitmap bits, and use GdiAlphaBlend() with a DIB
> >> > section. Basically my patch does all of this.
> >>
> >> Yes of course. My question was whether on Windows it's drawn transparent
> >> even for the DDB case. I guess the answer is yes since you have an app
> >> that does this, but a small test case wouldn't hurt.
> >
> > I just added the code to my test app to draw a bitmap with BitBlt()
> > loaded with LoadBitmap() (instead of assigning it to the Static control),
> > and the result is drawn without transparency under Windows.
>
> But if you assign it to the Static control it's transparent, right? And
> it's really a DDB, right?
Right, it's a DDB. I've attached a test app to the bug 47018. That version
of the test won't run under XP, I've fixed it in a later version, but that
changes nothing to the loading and painting code, I'm just mentioning this
in case you will try it under XP.
> Just want to make sure that we need special handling there, and that
> it's not the app getting a DDB when it should be getting a DIB or
> something like that.
Sure.
--
Dmitry.
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic