Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[vdr] Re: non-transparent osd skin



Torgeir Veimo wrote:
> 
> On Mon, 2004-10-18 at 13:43 +0200, Klaus Schmidinger wrote:
> > Torgeir Veimo wrote:
> > >
> > > On Mon, 2004-10-18 at 13:17 +0200, Nicolas Huillard wrote:
> > > > Torgeir Veimo a écrit :
> > > > > I've put a plugin version of the non-transparent skin on
> > > > > http://nothome.com/vdr
> > > > >
> > > > > This skin is a modification of the classic VDR skin, but uses dithering
> > > >
> > > > I'll give it a try.
> > > > Couldn't it be implemented as a derived class of a standard skin class
> > > > (one of classic or st:tng, or both), implementing only the differences
> > > > (eg. the dithering itself) ?
> > >
> > > It's mostly a copy&paste of the classic skin atm, so could maybe just
> > > subclass this skin. I think it could be implemented as a mod for vdr's
> > > osd itself so that it does the dithering as a step after rendering just
> > > before being displayed. The font rendering also needs to be changed,
> > > because I draw an outline to avoid rugged edges around fonts drawn on
> > > top of the dithering.
> >
> > What _exactly_ is it that you have to do special here?
> > The OSD is basically just a bitmap where each byte corresponds
> > to a color from a palette. I'm afraid I don't understand what
> > that "non-transparent" stuff is about. Can you please elaborate?
> 
> Well, the naming could probably be better. Instead of drawing a
> rectangle with non-zero alpha values for osd background, I draw a
> checker pattern in black.
> 
> In addition, if eg. white text is drawn directly on top of such a
> pattern, it's gets jagged edges, so I also draw the text in black first
> one pixel up and to the left, then down and to the right, then in the
> correct colour.
> 
> I've put an image up on http://nothome.com/vdr to illustrate.

Thanks, now I see what this is all about.
So basically you have an OSD that is not able to do alpha blending, right?
Well, wouldn't it then be better to modify this (one!) OSD so that it does
dithering, instead of modifying (many!) skin plugins?

Klaus




Home | Main Index | Thread Index