[vdr] skinsoppalusikka box size in HD

Jiri Dobry jdobry at centrum.cz
Tue Nov 24 16:39:16 CET 2009


Hello,

I am using skinsoppalusikka(thanks Rolf for great job).  VDR with latest 
xineliboutput allow use full HD OSD. But it is problem because box size 
for timers and status is divided from symbol size and it is too small. I 
can't  use font sizes over 3.6%.

Here is bugfix for replay screen.

Jiri

PS: exept this bug, skinsoppalusikka use olny one lineWeight. If you try 
use bigger small font than normal characters overload from boxies, but 
it is not fixed in this patch.

-------------------------------------------------------

diff -urN skinsoppalusikka-1.6.4/soppalusikka.c 
skinsoppalusikka-1.6.4-patched/soppalusikka.c
--- skinsoppalusikka-1.6.4/soppalusikka.c    2009-04-14 
03:20:00.000000000 +0200
+++ skinsoppalusikka-1.6.4-patched/soppalusikka.c    2009-11-24 
16:08:35.000000000 +0100
@@ -1175,18 +1175,20 @@
 cSkinSoppalusikkaDisplayReplay::cSkinSoppalusikkaDisplayReplay(bool 
ModeOnly)
 {
   int sw = bmFastReverse.Width() + bmSlowReverse.Width() + 
bmPlay.Width() + bmPause.Width() + bmSlowForward.Width() + 
bmFastForward.Width();
-  lineHeight = cFont::GetFont(fontOsd)->Height();
+  lineHeight = cFont::GetFont(fontSml)->Height();
+  if (lineHeight < bmPause.Height()) lineHeight = bmPause.Height();
   drawdate = true;
   modeonly = ModeOnly;
   x0 = 0;
   x1 = x0 + BigGap;
   x2 = x1 + Roundness;
-  x3 = x2 + sw + 5 * Gap;
+  x3 = x2 + cFont::GetFont(fontSml)->Width("XXX 00.00.00 00:00") + 2 * Gap;
   x4 = x3 + 4 * BigGap;
   x10 = cOsd::OsdWidth();
   x9 = x10 - BigGap;
   x8 = x9 - Roundness;
-  x6 = x8 - sw - 5 * Gap;
+  x6 = x8 - cFont::GetFont(fontSml)->Width("00:00:00/00:00:00") - 2 * Gap;
+  if (x6 > x8 - sw - 5 * Gap) x6 = x8 - sw - 5 * Gap;
   x7 = x6 + (x8 - x6) / 2;
   x5 = x6 - 4 * BigGap;
   y0 = 0;



More information about the vdr mailing list