Text2skin-Skin Referenz
Wirbel (Diskussion | Beiträge) (→<window>) |
Wirbel (Diskussion | Beiträge) (→Attribute) |
||
Zeile 844: | Zeile 844: | ||
==Attribute== | ==Attribute== | ||
+ | ===x/y Koordinaten=== | ||
+ | {| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;" | ||
+ | |- bgcolor=#efefef | ||
+ | !width=10%|Attribut | ||
+ | !width=10%|Wertebereich | ||
+ | !width=40%|Bedeutung absolute Mode | ||
+ | !width=40%|Bedeutung relative Mode | ||
+ | |- | ||
+ | | x1 || -720..-1, 0..+719 || links || links, bezogen auf OSD Position | ||
+ | |- | ||
+ | | y1 || -576..-1, 0..+575 || oben || oben, bezogen auf OSD Position | ||
+ | |- | ||
+ | | x2 || -720..-1, 0..+719 || rechts || links, bezogen auf OSD Position | ||
+ | |- | ||
+ | | y2 || -576..-1, 0..+575 || unten || links, bezogen auf OSD Position | ||
+ | |- | ||
+ | | x || -720..-1, 0..+719 || links (unscaliert) || links (unscaliert), bezogen auf OSD Position | ||
+ | |- | ||
+ | | y || -576..-1, 0..+575 || oben (unscaliert) || oben (unscaliert), bezogen auf OSD Position | ||
+ | |} | ||
+ | |||
+ | Die Koordinaten x1, y1, x2, y2, x, y beziehen sich im 'absolute' Mode auf die gesamte darstellbare Bildfläche von 720x576 Pixeln. Im 'relative' Mode beziehen sich alle Angaben stattdessen auf die OSD-Fläche, welche je nach Einstellungen im VDR-Setup (OSD Links, Rechts, Höhe, Breite, 4:3, 16:9) in Größe und Position variiert. Positive Werte (inklusive Null) für x{n} und y{n} sind als Offset zur linken oberen Ecke zu verstehen, negative Werte als Offset zur rechten unteren Ecke. x-Werte sind horizontale Angaben, y-Werte vertikale. | ||
+ | |||
+ | Tipp: Wenn möglich sollten Skins im 'relative' Mode mit x1,y1,x,y als positiven Werten angegeben werden und x2,y2 als negativen Werten. So wird gewährleistet, dass das erstellte Skin immer vollständig dargestellt werden kann. | ||
+ | |||
===arc=== | ===arc=== | ||
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;" | {| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;" |
Version vom 26. Januar 2005, 00:12 Uhr
Diese Dokumentation gilt für die "1.0" Version des text2skin-plugins.
Dies ist eine Kurzreferenz des auf XML-basierenden Skin-Formates des text2skin Plugins.
Inhaltsverzeichnis |
Elemente
<skin>
Dies ist das Wurzelelement des Skins. Alle weiteren Elemente liegen verschachtelt in diesem.
Attribut | Wert | Beschreibung |
---|---|---|
version | VERSION | Version des Skin-Formates (fester Wert, aktuell "1.0") |
name | NAME | Name der im VDR-OSD erscheinen soll |
screenBase |
|
Kennzeichnet, ob das Skin relativ (relative) zum VDR-Setup (OSD links, oben, Breite, Höhe) oder absolut (absolute) auf eine Fläche von 720x576 gezeichnet werden 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 |
|
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, 4 = 16Farben, 8 = 256Farben |
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/TOKEN | Komplexe Bedingung |
color | STRING | Farbe des Rechtecks |
Beispiel | ||
<rectangle x1="20" x2="99" y1="-83" y2="-44" color="#00000000" /> |
<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/TOKEN | Komplexe Bedingung |
color | STRING | Farbe der Ellipse |
arc | ZAHL | Kreisbogen |
Beispiel | ||
<ellipse x1="5" y1="7" x2="14" y2="15" color="GraphLight" condition="{IsMenuCurrent}"/> |
<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/TOKEN | Komplexe Bedingung |
color | STRING | Farbe der Kurve |
arc | ZAHL | Richtung |
Beispiel | ||
;-( |
<image>
Anzeige eines Bildes
Attribut | Wert | Beschreibung |
---|---|---|
x | ZAHL | Position der linken Kante (keine Skalierung) |
y | ZAHL | Position der oberen Kante (keine Skalierung) |
x1 | ZAHL | Position der linken Kante (wenn skaliert werden soll) |
y1 | ZAHL | Position der oberen Kante (wenn skaliert werden soll) |
x2 | ZAHL | Position der rechten Kante (wenn skaliert werden soll) |
y2 | ZAHL | Position der unteren Kante (wenn skaliert werden soll) |
condition | FUNKTION/TOKEN | Komplexe Bedingung |
alpha | ZAHL | Überlagerte Transparenz von 0-255 |
colors | ZAHL | Maximale Anzahl der Farben im Ergebnisbild (wenn skaliert werden soll) |
color | STRING | Austauschfarbe für Farbe 1 des Bildes |
bgColor | STRING | Austauschfarbe für Farbe 0 des Bildes |
path | STRING/TOKEN | Pfad zur Bilddatei |
Beispiel | ||
<image x="0" y="-70" path="Aluminium_volumebar.png" /> <image x="585" y="138" condition="{CanScrollUp}" path="symbols/arrowup.xpm" color="#AFFFFF00" /> |
<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/TOKEN | Komplexe Bedingung |
color | STRING | Textfarbe |
align |
|
Ausrichtung des Textes (Zentriert, Rechtsbündig, Linksbündig) |
font | STRING | Name des Fonts |
Beispiel | ||
<text x1="42" x2="571" y1="-113" y2="-86" color="#FF000000" font="Osd">{ReplayTitle}</text> |
<marquee>
Alternative zu <text>. Scrollt überlange Texte hin und her.
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/TOKEN | Komplexe Bedingung |
color | STRING | Textfarbe |
delay | ZAHL | Verzögerung des Scrollens in ms (Laufgeschwindigkeit) |
align |
|
Ausrichtung des Textes (Zentriert, Rechtsbündig, Linksbündig) |
font | STRING | Name des Fonts |
Beispiel | ||
<marquee x1="130" x2="480" y1="423" y2="445" color="Text" font="Sml">{ReplayTitle}</marquee> |
<blink>
Alternative zu <text>. Stellt Text blinkend dar.
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/TOKEN | Komplexe Bedingung |
color | STRING | Textfarbe |
blinkColor | STRING | Highlightfarbe (Optional: Ansonsten wird an/aus geblinkt) |
delay | ZAHL | Pause zwischen Umschalten |
align |
|
Ausrichtung des Textes (Zentriert, Rechtsbündig, Linksbündig) |
font | STRING | Name des Fonts |
Beispiel | ||
<blink x1="30" x2="80" y1="90" y2="80" color="Text" blinkColor="Green" delay="800" font="Sml" condition="{IsRunning}">{PresentStartDateTime:%H\:%M}</blink> |
<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/TOKEN | Komplexe Bedingung |
color | STRING | Farbe des Textes |
align |
|
Ausrichtung des Textes (Zentriert, Rechtsbündig, Linksbündig) |
font | STRING | 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/TOKEN | Komplexe Bedingung |
color | STRING | Farbe des Balkens |
bgColor | STRING | Farbe des Hintergrunds |
Beispiel | ||
<scrollbar x1="585" x2="608" y1="162" y2="-110" color="#AFFFFF00" bgColor="#8F2B1B9E" /> |
<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/TOKEN | Komplexe Bedingung |
color | STRING | Farbe des Balkens |
bgColor | STRING | Farbe des Hintergrunds |
mark | STRING | Farbe der Schnittmarkierungen |
active | STRING | Farbe des aktiven Bereiches |
keep | STRING | Farbe des Bereiches der nicht herausgeschnitten wird |
current | ZAHL/TOKEN | Aktueller Indexwert |
total | ZAHL/TOKEN | Maximaler Indexwert |
Beispiel | ||
<progress x1="19" x2="556" y1="-17" y2="-7" color="#AF000000" current="{VolumeCurrent}" total="{VolumeTotal}" /> <progress x1="129" x2="478" y1="487" y2="502" color="#FFCE7B00" bgColor="Blue" mark="Black" active="Black" keep="Black" current="{ReplayPositionIndex}" total="{ReplayDurationIndex}"/> |
<block>
Ein <block></block> fasst mehrere Objekte zusammen
Attribut | Wert | Beschreibung |
---|---|---|
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/TOKEN | Komplexe Bedingung (möglich, macht aber wenig Sinn) |
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 |
---|---|---|
condition | FUNKTION/TOKEN | Komplexe Bedingung (möglich, macht aber wenig Sinn) |
height | ZAHL | Höhe eines Listeneintrags |
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 | Bemerkung | Beschreibung |
---|---|---|
DateTime | (s.h. "man strftime") | Aktuelles Datum/Uhrzeit |
IsRecording | Wahr wenn eine Aufzeichnung stattfindet | |
CurrentRecording | Liefert im Zwei-Sekunden-Takt alle aktuell laufenden Aufnahmen Attribut: Zahl, um n-te laufende Aufnahme zu wählen | |
FreeDiskSpace | Aktueller Restspeicherplatz als Zahl in MB Attribut: Rückgabe als formatierte Zeit |
Channel Display
Token | Bemerkung | Beschreibung |
---|---|---|
ChannelNumber | Kanalnummer ("Kanalnummer-" wenn gerade eine Eingabe stattfindet) | |
ChannelName | Kanalname oder Gruppenname | |
ChannelShortName | Kurzname des Kanals, wenn vorhanden | |
ChannelBouquet | Provider/Bouquetname, wenn vorhanden | |
ChannelPortal | Portalname, wenn vorhanden | |
ChannelSource | Signalquelle (z.B. "S19.2E") | |
PresentStartDateTime | (* auch in #Menu Display) | Startzeit des aktuellen Titels |
PresentVPSDateTime | (* auch in #Menu Display) | VPS-Startzeit des aktuellen Titels, wenn vorhanden |
PresentEndDateTime | (* auch in #Menu Display) | Ende-Zeit des aktuellen Titels |
PresentDuration | (* auch in #Menu Display) | Dauer des aktuellen Titels |
PresentProgress | (* auch in #Menu Display) | Bisherige Laufzeit des aktuellen Titels |
PresentRemaining | (* auch in #Menu Display) | Restzeit des aktuellen Titels |
PresentTitle | (* auch in #Menu Display) | Titel/Überschrift des aktuellen Titels |
PresentShortText | (* auch in #Menu Display) | Kurztext/Episode des aktuellen Titels |
PresentDescription | (* auch in #Menu Display) | Beschreibung des aktuellen Titels |
PresentHasTimer (alt: HasTimer) | (* auch in #Menu Display) | Wahr wenn der aktuelle Titel von einem Timer erfasst wird |
PresentIsRunning (alt: IsRunning) | (* auch in #Menu Display) | Wahr wenn der aktuelle Titel den Status "running" hat |
PresentHasVPS | (* auch in #Menu Display) | Wahr wenn die Sendung eine eigene VPS-Zeit hat |
FollowingStartDateTime | Startzeit des folgenden Titels | |
FollowingVPSDateTime | VPS-Startzeit des folgenden Titels, wenn vorhanden | |
FollowingEndDateTime | Ende-Zeit des folgenden Titels | |
FollowingDuration | Dauer des folgenden Titels | |
FollowingTitle | Titel/Überschrift des folgenden Titels | |
FollowingShortText | Kurztext/Episode des folgenden Titels | |
FollowingDescription | Beschreibung des folgenden Titels | |
FollowingHasTimer | Wahr wenn der folgende Titel von einem Timer erfasst wird | |
FollowingIsRunning | Wahr wenn der folgende Titel den Status "running" hat | |
FollowingHasVPS | Wahr wenn der folgende Titel eine eigene VPS-Zeit hat | |
ButtonRed | (* auch in #Menu Display, #Replay Display) | Beschriftung des roten Buttons, wenn vorhanden |
ButtonGreen | (* auch in #Menu Display, #Replay Display) | Beschriftung des grünen Buttons, wenn vorhanden |
ButtonYellow | (* auch in #Menu Display, #Replay Display) | Beschriftung des gelben Buttons, wenn vorhanden |
ButtonBlue | (* auch in #Menu Display, #Replay Display) | Beschriftung des blauen Buttons, wenn vorhanden |
Language | Sprache (noch nur "Audio 1", "Audio 2" oder "Digital Audio") | |
ChannelHasTeletext (alt: HasTeletext) | Wahr wenn der Sender Videotext ausstrahlt | |
ChannelHasMultilang (alt: HasMultilang) | Wahr wenn der Sender mehrere Tonspuren ausstrahlt | |
ChannelHasDolby (alt: HasDolby) | Wahr wenn der Sender Mehrkanal-Digitalton ausstrahlt | |
ChannelIsEncrypted (alt: IsEncrypted) | Wahr wenn der Sender verschlüsselt ist | |
ChannelIsRadio (alt: IsRadio) | Wahr wenn der Sender ein Radiosender ist | |
ChannelHasVPS (alt: HasVPS) | Wahr wenn der Sender VPS ausstrahlen kann |
Volume Display
Token | Bemerkung | Beschreibung |
---|---|---|
VolumeCurrent | Aktueller Lautstärkewert (0-VolumeTotal) (numerisch) | |
VolumeTotal | Maximaler Lautstärkewert | |
VolumeIsMute (alt: IsMute) | Wahr wenn Stummschaltung aktiv ist |
Message Display
Token | Bemerkung | Beschreibung |
---|---|---|
Message | (* auch in allen anderen Displays) | Text der aktuellen Nachricht (Typ egal), wenn vorhanden |
MessageStatus | (* auch in allen anderen Displays) | Text der aktuellen Nachricht, wenn vorhanden und vom Typ Statusnachricht |
MessageInfo | (* auch in allen anderen Displays) | Text der aktuellen Nachricht, wenn vorhanden und vom Typ Information |
MessageWarning | (* auch in allen anderen Displays) | Text der aktuellen Nachricht, wenn vorhanden und vom Typ Warnung |
MessageError | (* auch in allen anderen Displays) | Text der aktuellen Nachricht, wenn vorhanden und vom Typ Fehler |
Replay Display
Token | Bemerkung | Beschreibung |
---|---|---|
ReplayTitle | Attribut: clean | Titel der aktuell laufenden Wiedergabe |
ReplayPositionIndex | Position in der Wiedergabe (numerisch, analog zu PresentProgress) | |
ReplayDurationIndex | Dauer der Wiedergabe (numerisch, analog zu PresentDuration) | |
ReplayRemaining | Restzeit der Wiedergabe (numerisch, analog zu PresentRemaining) | |
ReplayPrompt | Eingabeaufforderung, wenn vorhanden (z.B. "Springen: --:--") | |
ReplayIsPlaying (alt: IsPlaying) | Attribut: 0 = kein Multispeed, 1-3 = Multispeed, keines = egal | Wahr wenn die Wiedergabe normal abläuft |
ReplayIsFastForward (alt: IsFastForward) | Attribut: 0 = kein Multispeed, 1-3 = Multispeed, keines = egal | Wahr wenn schneller Vorlauf aktiv ist |
ReplayIsFastRewind (alt: IsFastRewind) | Attribut: 0 = kein Multispeed, 1-3 = Multispeed, keines = egal | Wahr wenn schneller Rücklauf aktiv ist |
ReplayIsSlowForward (alt: IsSlowForward) | Attribut: 0 = kein Multispeed, 1-3 = Multispeed, keines = egal | Wahr wenn Vorwärts-Zeitlupe aktiv ist |
ReplayIsSlowRewind (alt: IsSlowRewind) | Attribut: 0 = kein Multispeed, 1-3 = Multispeed, keines = egal | Wahr wenn Rückwärts-Zeitlupe aktiv ist |
ReplayIsPausing (alt: IsPausing) | Wahr wenn die Wiedergabe pausiert ist | |
ReplayPosition | Position in der Wiedergabe, fertig formatiert, mit Frames auf Schnittmarken, sonst ohne Frames | |
ReplayDuration | Dauer der Wiedergabe, fertig formatiert | |
ReplayMode | Art der Wiedergabe (z.B. "dvd", "vcd", "normal", ...) | |
ButtonRed | (* auch in #Channel Display, #Menu Display) | Text des roten Button, wenn vorhanden |
ButtonGreen | (* auch in #Channel Display, #Menu Display) | Text des grünen Button, wenn vorhanden |
ButtonYellow | (* auch in #Channel Display, #Menu Display) | Text des gelben Button, wenn vorhanden |
ButtonBlue | (* auch in #Channel Display, #Menu Display) | Text des blauen Button, wenn vorhanden |
ReplayIsShuffle | Wahr wenn die Wiedergabe im Zufalls-Modus ist (derzeit nur MP3) | |
ReplayIsLoop | Wahr wenn die Wiedergabe im Wiederholungs-Modus ist (derzeit nur MP3) |
Menu Display
Token | Bemerkung | Beschreibung |
---|---|---|
MenuTitle | Attribut: "clean", "rest" | Titelzeile der Menüseite oder gefilterter Titel mit "clean", oder Rest des gefilterten Titels mit "rest" |
MenuGroup | Text des aktuellen Listeneintrags, wenn es sich um eine Gruppe/Trenner handelt | |
IsMenuGroup | Wahr wenn aktuell gezeichneter Eintrag eine Gruppe/Trenner ist | |
MenuItem | Text des aktuellen Listeneintrags, wenn es sich um einen normalen Eintrag handelt | |
IsMenuItem | Wahr wenn der aktuell gezeichnete Eintrag ein normaler Eintrag ist | |
MenuCurrent | Attribut: "clean" | Text des aktuellen Listeneintrags, wenn es sich um den ausgewählten Eintrag handelt |
IsMenuCurrent | Wahr wenn der aktuell gezeichnete Eintrag der zur Zeit ausgewählte ist | |
MenuText | Textseite, die statt der Liste angezeigt werden soll (z.B. Ausgabe im Befehle-Menü) | |
ButtonRed | (* auch in #Channel Display, #Replay Display) | |
ButtonGreen | (* auch in #Channel Display, #Replay Display) | |
ButtonYellow | (* auch in #Channel Display, #Replay Display) | |
ButtonBlue | (* auch in #Channel Display, #Replay Display) | |
CanScrollUp | Wahr wenn ein Scrolltext angezeigt wird, der aktuell nach oben gescrollt werden kann | |
CanScrollDown | Wahr wenn ein Scrolltext angezeigt wird, der aktuell nach unten gescrollt werden kann | |
PresentStartDateTime | (* auch in #Channel Display) | |
PresentVPSDateTime | (* auch in #Channel Display) | |
PresentEndDateTime | (* auch in #Channel Display) | |
PresentDuration | (* auch in #Channel Display) | |
PresentProgress | (* auch in #Channel Display) | |
PresentRemaining | (* auch in #Channel Display) | |
PresentTitle | (* auch in #Channel Display) | |
PresentShortText | (* auch in #Channel Display) | |
PresentDescription | (* auch in #Channel Display) | |
PresentHasVPS | (* auch in #Channel Display) | |
PresentHasTimer (alt: HasTimer) | (* auch in #Channel Display) | |
PresentIsRunning (alt: IsRunning) | (* auch in #Channel Display) | |
ChannelHasVPS (alt: HasVPS) | (* auch in #Channel Display) |
Audio Tracks Display
Token | Bemerkung | Beschreibung |
---|---|---|
MenuTitle | Titelzeile der Audiotrack-Liste | |
AudioTrack | (* auch in allen anderen Displays) | Bezeichnung des aktuell eingestellten Audio-Track |
AudioChannel | (* auch in allen anderen Displays) | Bezeichnung des geschalteten Kanals ("stereo", "left" oder "right") |
Funktionen
not
Negierung einer Funktion.
not(equal({PresentStartDateTime},{PresentVPSDateTime}))
and
Wahr, wenn alle Parameter wahr sind.
and({CanScrollUp},{CanScrollDown})
or
Wahr, wenn mindestens ein Parameter wahr ist.
or({CanScrollUp},{CanScrollDown})
equal
Wahr, wenn beide Parameter gleich sind.
equal('Kanäle', trans('Channels'))
ne
Wahr, wenn beide Parameter ungleich (not equal) sind.
ne({ReplayMode}, 'normal')
gt
Wahr, wenn der erste Parameter größer als (greater than) der zweite ist.
gt({FreeDiskSpace},5000)
ge
Wahr, wenn der erste Parameter größer oder gleich (greater/equal) dem zweiten ist.
ge({FreeDiskSpace},5000)
lt
Wahr, wenn der erste Parameter kleiner als (less than) der zweite ist.
lt({FreeDiskSpace},5000)
le
Wahr, wenn der erste Parameter kleiner oder gleich (less/equal) dem zweiten ist.
gt({FreeDiskSpace},5000)
file
Liefert den Parameter zurück, wenn die dort angegebene Datei existiert.
file('logos/{ChannelName}.png')
trans
Liefert die Übersetzung (nach i18n) des Parameters; falsch, wenn keine Übersetzung gefunden wurde.
equal('Kanäle', trans('Channels'))
Attribute
x/y Koordinaten
Attribut | Wertebereich | Bedeutung absolute Mode | Bedeutung relative Mode |
---|---|---|---|
x1 | -720..-1, 0..+719 | links | links, bezogen auf OSD Position |
y1 | -576..-1, 0..+575 | oben | oben, bezogen auf OSD Position |
x2 | -720..-1, 0..+719 | rechts | links, bezogen auf OSD Position |
y2 | -576..-1, 0..+575 | unten | links, bezogen auf OSD Position |
x | -720..-1, 0..+719 | links (unscaliert) | links (unscaliert), bezogen auf OSD Position |
y | -576..-1, 0..+575 | oben (unscaliert) | oben (unscaliert), bezogen auf OSD Position |
Die Koordinaten x1, y1, x2, y2, x, y beziehen sich im 'absolute' Mode auf die gesamte darstellbare Bildfläche von 720x576 Pixeln. Im 'relative' Mode beziehen sich alle Angaben stattdessen auf die OSD-Fläche, welche je nach Einstellungen im VDR-Setup (OSD Links, Rechts, Höhe, Breite, 4:3, 16:9) in Größe und Position variiert. Positive Werte (inklusive Null) für x{n} und y{n} sind als Offset zur linken oberen Ecke zu verstehen, negative Werte als Offset zur rechten unteren Ecke. x-Werte sind horizontale Angaben, y-Werte vertikale.
Tipp: Wenn möglich sollten Skins im 'relative' Mode mit x1,y1,x,y als positiven Werten angegeben werden und x2,y2 als negativen Werten. So wird gewährleistet, dass das erstellte Skin immer vollständig dargestellt werden kann.
arc
Attribut | Wert | Bedeutung | |
---|---|---|---|
arc | 0 | Bei ellipse: volle Ellipse | Bei slope: horizontal, steigend, unten |
1 | Bei ellipse: erster Quadrant | Bei slope: horizontal, steigend, oben | |
2 | Bei ellipse: zweiter Quadrant | Bei slope: horizontal, fallend, unten | |
3 | Bei ellipse: dritter Quadrant | Bei slope: horizontal, fallend, oben | |
4 | Bei ellipse: vierter Quadrant | Bei slope: vertikal, steigend, rechts | |
5 | Bei ellipse: rechte Hälfte | Bei slope: vertikal, steigend, links | |
6 | Bei ellipse: obere Hälfte | Bei slope: vertikal, fallend, rechts | |
7 | Bei ellipse: linke Hälfte | Bei slope: vertikal, fallend, links | |
8 | Bei ellipse: untere Hälfte | ||
-1..-8 | Bei ellipse: s.o., invertiert |
color
Betrifft auch: bgColor, blinkColor, mark, active, keep
Farben werden im RGB-Format mit Transparenz angegeben. Also etwa
color="#AARRGGBB"
Farben können auch als symbolischer Wert angegeben werden, welcher in der .colors-Datei des Skins aufgelöst wird. Z.B.
color="MenuTextFg"
- A = Alphawert (eigentlich Deckkraft, oft auch 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.
font
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 und Breite (optional)
font="helmetr.ttf:Größe[,Breite]"
an