Mailing List archive

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

[vdr] Re: non-transparent osd skin



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.

-- 
Torgeir Veimo <torgeir@pobox.com>





Home | Main Index | Thread Index