Text2skin-Skin Referenz

Aus VDR Wiki
Wechseln zu: Navigation, Suche
Hinweis
Hinweis

Diese Dokumentation gilt für die kommende "1.0" Version des text2skin-plugins.


Warnung
Warnung

Dies ist nur eine erste Fassung. Sie ist weder vollständig noch Fehlerfrei! --Monroe 13:27, 13. Dez 2004 (CET)


Dies ist eine Kurzreferenz des auf XML-basierenden Skin-Formates des text2skin Plugins.

Inhaltsverzeichnis

Farben

Farben werden im RGB-Format mit Transparenz angegeben. Also etwa

color=#AARRGGBB
  • A = Alphawert (Transparenz)
  • R = Rotwert
  • G = Grünwert
  • B = Blauwert

Ein paar Beispiele

       AARRGGBB
color=#00000000 = Schwarz, voll transparent (durchsichtig)
color=#FF000000 = Schwarz, volle Deckkraft
color=#7F000000 = Schwarz, halb durchscheinend
color=#7FFFFFFF = Weiß, halb durchscheinend

und natürlich alle möglichen Zwischentöne und Transparenzen.

Fonts

Es gibt drei vorgegebene Fonts

  • Osd
  • Fix
  • Sml

Wenn man die Freetype-Bibliothek installiert hat und beim compilieren aktiviert hat, lässt sich zusätzlich jeder TrueType-Font verwenden, der unter

  • /etc/vdr/plugins/text2skin/fonts/

oder

  • /etc/vdr/plugins/text2skin/SkinName/

installiert ist.

In der Skindatei gibt man den Fontnamen,

font="Osd"

oder, bei Truetype-Fonts, den Font-Dateinamen und die gewünschte Größe

font="helmetr.ttf:20"

an

Elemente

<skin>

Danach folgt das oberste Element (das Wurzelelement) des Skins <skin>. Alle weiteren Elemente liegen verschachtelt in diesem

Attribut Wert Beschreibung
version VERSION Version des Skin-Formates
name NAME Name der im VDR-OSD erscheinen soll
screenBase
  • relative
  • absolute
Kennzeichnet, ob das Skin relativ (relative) zum VDR-Setup oder absolut (absolute) auf einer Fläche von 720x576 zeichnen soll
Beispiel
<?xml version="1.0"?>
<skin version="1.0" name="brushed Aluminium" screenBase="relative">
  .
  .
  .
</skin>

<display>

Das OSD von VDR hat mehrere "Darstellungen". Die wichtigsten wären das Hauptmenu und die Kanalinfo-Anzeige. Für jeden Bereich, der mit dem Skin gestaltet werden soll muss ein <display> Container erstellt werden.

Attribut Wert Beschreibung
id
  • channelInfo
  • channelSmall
  • volume
  • message
  • replayInfo
  • replaySmall
  • menu
Bezeichnet den Typ der OSD-Darstellung
Beispiel
<?xml version="1.0"?>
<skin version="1.0" name="brushed Aluminium" screenBase="relative">
  <display id="replayInfo">
   .
   .
   .
  </display>
</skin>

<window>

Jeder Display-Container beginnt mit der Vorgabe von Zeichenflächen, auf denen dann die Elemente plaziert werden können.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
x2 ZAHL Position der rechten Kante
y2 ZAHL Position der unteren Kante
bpp ZAHL Farbtiefe des Zeichenfläche
Beispiel
<?xml version="1.0"?>
<skin version="1.0" name="brushed Aluminium" screenBase="relative">
  <display id="replayInfo">
    <window x1="0" x2="619" y1="-113" y2="-84" bpp="4" />
    <window x1="20" x2="99" y1="-83" y2="-44" bpp="4" />
     .
     .
     .
  </display>
</skin>

<rectangle>

Zeichnet ein gefülltes Rechteck.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
x2 ZAHL Position der rechten Kante
y2 ZAHL Position der unteren Kante
condition FUNKTION Komplexe Bedingung
color STRING
Beispiel
<rectangle x1="20" x2="99" y1="-83" y2="-44" color="#00000000" />

<text>

Ein statischer oder zusammengesetzter Text.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION Komplexe Bedingung
color STRING
align
  • center
  • right
  • left
Ausrichtung des Textes (Blocksatz, Rechtsbündig, Linksbündig)
font FUNKTION Name des Fonts
Beispiel
<text x1="42" x2="571" y1="-113" y2="-86" color="#FF000000" font="Osd">{ReplayTitle}</text>

<image>

Anzeige eines Bildes

Attribut Wert Beschreibung
x ZAHL Position der linken Kante
y ZAHL Position der oberen Kante
x1 ZAHL Position der linken Kante (wie x)
y1 ZAHL Position der oberen Kante (wie y)
x2 ZAHL Position der rechten Kante (wenn skaliert werden soll)
y2 ZAHL Position der unteren Kante (wenn skaliert werden soll)
condition FUNKTION Komplexe Bedingung
alpha ZAHL Transparenz von 0-255
color STRING
bgColor STRING
path FUNKTION
Beispiel
<image x="0" y="-70" path="Aluminium_volumebar.png" />
<image x="585" y="138" condition="{CanScrollUp}" path="symbols/arrowup.xpm" color="#AFFFFF00" />

<ellipse>

Zeichnet einen (Teil-)Kreis, oder eine Ellipse.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION Komplexe Bedingung
color STRING
arc ZAHL
Beispiel

<slope>

Eine Kurve.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION Komplexe Bedingung
color STRING
arc ZAHL
Beispiel

<progress>

Eine Fortschrittsanzeige

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION Komplexe Bedingung
color STRING
bgColor STRING
mark STRING
active STRING
keep STRING
current FUNKTION
total FUNKTION
Beispiel
<progress x1="19" x2="556" y1="-17" y2="-7" color="#AF000000" current="{VolumeCurrent}" total="{VolumeTotal}" />

<scrolltext>

Ein mehrzeiliger Text.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION Komplexe Bedingung
color STRING
align
  • center
  • right
  • left
Ausrichtung des Textes (Blocksatz, Rechtsbündig, Linksbündig)
font FUNKTION Name des Fonts
Beispiel
<scrolltext x1="24" y1="138" y2="-72" x2="583" font="helmetr.ttf:20" color="#AFFFFF00">
{PresentShortText}
{PresentDescription}
</scrolltext>

<scrollbar>

Eine Scrollleiste.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION Komplexe Bedingung
color STRING
bgColor STRING
mark STRING
active STRING
keep STRING
current FUNKTION
total FUNKTION
Beispiel
<scrollbar x1="585" x2="608" y1="162" y2="-110" color="#AFFFFF00" bgColor="#8F2B1B9E"/>

<block>

Ein <block></block> fasst mehrere Objekte zusammen

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION Komplexe Bedingung
Beispiel
<block condition="file('logos/{ChannelName}.mng')"> 
 <rectangle x1="4" x2="67" y1="4" y2="51" color="#AF000000"/>
 <image x="0" y="0" path="logos/{ChannelName}.mng"/>
</block>

<list>

Definiert die Liste im Menü.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION Komplexe Bedingung
Beispiel
<list x1="24" y1="62" x2="569" y2="-82">
  <item height="28"/>
  <text x1="25" x2="569" y1="3" y2="27" color="#AF00FFFF" font="Sml">{MenuGroup}</text>
  <text x1="25" x2="569" y1="3" y2="27" color="#AFFFFFFF" font="Sml">{MenuItem}</text>
  <rectangle x1="0" x2="579" y1="0" y2="27" color="#FF2B1B9E" condition="{IsMenuCurrent}" />
  <text x1="22" x2="569" y1="0" y2="27" color="#AFFFFFFF" font="Osd">{MenuCurrent}</text>
  <text x1="0" x2="25" y1="0" y2="27" color="#AFFFFFFF" font="Osd">-></text>
</list>

<item>

Definiert ein Item der Liste.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION Komplexe Bedingung
height ZAHL
Beispiel
<list x1="24" y1="62" x2="569" y2="-82">
  <item height="28" />
  <text x1="25" x2="569" y1="3" y2="27" color="#AF00FFFF" font="Sml">{MenuGroup}</text>
  <text x1="25" x2="569" y1="3" y2="27" color="#AFFFFFFF" font="Sml">{MenuItem}</text>
  <rectangle x1="0" x2="579" y1="0" y2="27" color="#FF2B1B9E" condition="{IsMenuCurrent}"/>
  <text x1="22" x2="569" y1="0" y2="27" color="#AFFFFFFF" font="Osd">{MenuCurrent}</text>
  <text x1="0" x2="25" y1="0" y2="27" color="#AFFFFFFF" font="Osd">-></text>
</list>

Token

Allgemein

Token Beschreibung
DateTime

Channel Display

Token Beschreibung
ChannelNumber
ChannelName
ChannelShortName
ChannelBouquet
PresentStartDateTime
PresentVPSDateTime
PresentEndDateTime
PresentDuration
PresentProgress
PresentTitle
PresentShortText
PresentDescription
FollowingStartDateTime
FollowingVPSDateTime
FollowingEndDateTime
FollowingDuration
FollowingTitle
FollowingShortText
FollowingDescription
Language
HasTeletext
HasMultilang
HasDolby
IsEncrypted
IsRadio
IsRecording
HasVPS
HasTimer
IsRunning

Volume Display

Token Beschreibung
VolumeCurrent
VolumeTotal
IsMute

Message Display

Token Beschreibung
Message
MessageStatus
MessageInfo
MessageWarning
MessageError

Replay Display

Token Beschreibung
ReplayTitle
ReplayPositionIndex
ReplayDurationIndex
ReplayPrompt
IsPlaying
IsFastForward
IsFastRewind
IsSlowForward
IsSlowRewind
IsPausing
ReplayPosition
ReplayDuration
ReplayMode

Menu Page

Token Beschreibung
MenuTitle
MenuGroup
IsMenuGroup
MenuItem
IsMenuItem
MenuCurrent
IsMenuCurrent
MenuText
ButtonRed
ButtonGreen
ButtonYellow
ButtonBlue
CanScrollUp
CanScrollDown

Funktionen

not

and

or

equal

file

trans