FTUI Widget Image: Unterschied zwischen den Versionen
Drhirn (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „Das [[{{PAGENAME}}|Progress Widget]] ist ein Widget für FHEM Tablet UI, mit dem ein Bild angezeigt werden kann. Die URL des Bildes kann entweder fest vorg…“) |
Keine Bearbeitungszusammenfassung |
||
(8 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Das [[{{PAGENAME}}| | Das [[{{PAGENAME}}|Image Widget]] ist ein Widget für [[FHEM Tablet UI V2]], mit dem ein Bild angezeigt werden kann. Die URL des Bildes kann entweder fest vorgegeben oder aus einem Reading gelesen werden. | ||
<gallery> | <gallery> | ||
Zeile 12: | Zeile 12: | ||
!Standard-Wert | !Standard-Wert | ||
!Beispiel | !Beispiel | ||
|- | |||
|'''data-device'''||FHEM-Device, dessen Reading eine Bild-URL enthält|||| | |||
|- | |- | ||
|'''data-get'''||Name des Readings, das die zu verwendende Bild-URL enthält||STATE||data-get="Image-URL" | |'''data-get'''||Name des Readings, das die zu verwendende Bild-URL enthält||STATE||data-get="Image-URL" | ||
Zeile 18: | Zeile 20: | ||
|- | |- | ||
|'''data-suffix'''||Letzter Teil der URL des anzuzeigenden Bildes||||data-suffix=".png" | |'''data-suffix'''||Letzter Teil der URL des anzuzeigenden Bildes||||data-suffix=".png" | ||
|- | |||
|'''data-part'''||Mittels RegEx gefiltertes Reading (data-get) mit der URL des anzuzeigenden Bildes (ab Update 12.11.2017)||||data-part=".*(http.*.jpg).*" | |||
|- | |||
|'''data-substitution'''||Mittels RegEx ersetztes Reading (data-get) mit der URL des anzuzeigenden Bildes (ab Update 12.11.2017)||||data-substitution="s/.*(http.*.jpg).*/$1" | |||
|- | |- | ||
|'''data-url'''||URL des anzuzeigenden Bildes||||<nowiki>data-url="https://example.com/bild.jpg"</nowiki> | |'''data-url'''||URL des anzuzeigenden Bildes||||<nowiki>data-url="https://example.com/bild.jpg"</nowiki> | ||
Zeile 57: | Zeile 63: | ||
* Wenn ''data-url'' nicht definiert ist, wird die URL des Bildes aus ''data-path'' + ''data-get'' + ''data-suffix'' zusammengesetzt. | * Wenn ''data-url'' nicht definiert ist, wird die URL des Bildes aus ''data-path'' + ''data-get'' + ''data-suffix'' zusammengesetzt. | ||
* Es kann nur ''data-url'' + ''data-refresh'' oder ''data-device'' + ''data-get'' verwendet werden, nicht beides gleichzeitig. | * Es kann nur ''data-url'' + ''data-refresh'' oder ''data-device'' + ''data-get'' verwendet werden, nicht beides gleichzeitig. | ||
* Wenn die Farben von Bildern etwas blass erscheinen, liegt das an einer leichten Transparenz, mit der die Bilder dargestellt werden. Um das zu verhindern sollte '''data-opacity="1"''' gesetzt werden. | |||
==Beispiele== | ==Beispiele== | ||
===Bild aus dem Internet anzeigen=== | ===Bild aus dem Internet anzeigen=== | ||
Dieses einfache Beispiel zeigt die Verwendung des [[FTUI Widget Image|Image-Widgets]] mit einer fest vorgegebenen Internetadresse. | Dieses einfache Beispiel zeigt die Verwendung des [[FTUI Widget Image|Image-Widgets]] mit einer fest vorgegebenen Internetadresse. | ||
< | <syntaxhighlight lang="html"> | ||
<div data-type="image" | <div data-type="image" | ||
data-url="https://fhem.de/www/images/default/fhemicon.png" | |||
data-size="100px"></div> | |||
</ | </syntaxhighlight> | ||
Soll verhindert werden, dass Browser das Bild aus ihrem Cache laden, anstatt von der Original-URL, muss die Klasse ''nocache'' verwendet werden: | |||
<syntaxhighlight lang="html"> | |||
<div data-type="image" | |||
data-url="https://fhem.de/www/images/default/Eventuell_im_Cache_gespeichertes_Bild.png" | |||
data-size="100px"></div> | |||
<div data-type="image" | |||
data-url="https://fhem.de/www/images/default/OriginalBild.png" | |||
data-size="100px" | |||
class="nocache"></div> | |||
</syntaxhighlight> | |||
[[File:FTUI_Widget_Image_01.png]] | [[File:FTUI_Widget_Image_01.png]] | ||
===URL aus einem Reading=== | ===URL aus einem Reading=== | ||
Hier wird die URL zum anzuzeigenden Bild aus dem STATE eines FHEM-Devices ausgelesen. | Hier wird die URL zum anzuzeigenden Bild aus dem STATE eines FHEM-Devices ausgelesen. | ||
< | <syntaxhighlight lang="html"> | ||
<div data-type="image" | <div data-type="image" | ||
data-device="dDummy" | data-device="dDummy" | ||
data-get="STATE" | data-get="STATE" | ||
data-size="100px"></div> | data-size="100px"></div> | ||
</ | </syntaxhighlight> | ||
[[File:FTUI_Widget_Image_01.png]] | [[File:FTUI_Widget_Image_01.png]] | ||
Zeile 90: | Zeile 109: | ||
|} | |} | ||
< | <syntaxhighlight lang="html"> | ||
<div data-type="image" | <div data-type="image" | ||
data-device="jnTVSender" | data-device="jnTVSender" | ||
Zeile 96: | Zeile 115: | ||
data-path="/fhem/images/TVSender/" | data-path="/fhem/images/TVSender/" | ||
data-size="80px"></div> | data-size="80px"></div> | ||
</ | </syntaxhighlight> | ||
[[File:FTUI_Widget_Image_02.png]] | [[File:FTUI_Widget_Image_02.png]] | ||
[[Kategorie:FHEM Tablet UI]] | ===data-part und data-substitution=== | ||
Die URL des Bildes wird aus einem Readings gefiltert bzw. zusammengebaut. | |||
<syntaxhighlight lang="html"> | |||
<li data-row="5" data-col="4" data-sizey="3" data-sizex="6"> | |||
<header>URL fromreading with part</header> | |||
<div data-type="image" data-device="ftuitest" data-part=".*(http.*.jpg).*" data-get="imgurl"></div> | |||
</li> | |||
<li data-row="5" data-col="10" data-sizey="3" data-sizex="3"> | |||
<header>URL fromreading with substitution</header> | |||
<div data-type="image" data-device="ftuitest" data-substitution="s/.*(http.*.jpg).*/$1" data-get="imgurl"></div> | |||
</li> | |||
</syntaxhighlight> | |||
[[Kategorie:FHEM Tablet UI V2|Image]] |
Aktuelle Version vom 2. August 2024, 16:00 Uhr
Das Image Widget ist ein Widget für FHEM Tablet UI V2, mit dem ein Bild angezeigt werden kann. Die URL des Bildes kann entweder fest vorgegeben oder aus einem Reading gelesen werden.
Attribute
Attribut | Beschreibung | Standard-Wert | Beispiel |
---|---|---|---|
data-device | FHEM-Device, dessen Reading eine Bild-URL enthält | ||
data-get | Name des Readings, das die zu verwendende Bild-URL enthält | STATE | data-get="Image-URL" |
data-path | Erster Teil der URL des anzuzeigenden Bildes | data-path="https://www.example.com/images/" | |
data-suffix | Letzter Teil der URL des anzuzeigenden Bildes | data-suffix=".png" | |
data-part | Mittels RegEx gefiltertes Reading (data-get) mit der URL des anzuzeigenden Bildes (ab Update 12.11.2017) | data-part=".*(http.*.jpg).*" | |
data-substitution | Mittels RegEx ersetztes Reading (data-get) mit der URL des anzuzeigenden Bildes (ab Update 12.11.2017) | data-substitution="s/.*(http.*.jpg).*/$1" | |
data-url | URL des anzuzeigenden Bildes | data-url="https://example.com/bild.jpg" | |
data-fhem-cmd | Befehl, der bei einem Klick auf das Bild an FHEM gesendet werden soll | data-fhem-cmd="set Bulp01 off" | |
data-state-get | Name des Parameters, der den Status-Wert enthält | data-state-get="STATE" | |
data-states | Ein Array an möglichen Status-Werten | data-states='["on","off","pending"]' | |
data-classes | Ein Array von CSS-Klassen. Welche Klasse zusätzlich hinzugefügt wird, entscheidet sich durch das data-states-Array | data-classes='["bg-green","bg-red","bg-yellow"]' | |
data-size | Gewünschte Breite des Bildes in Pixel oder Prozent. Die Höhe wird proportional skaliert | 50% | data-size="248px" |
data-width | Gewünschte Breite des Bildes in Pixel oder Prozent. | 100% | data-size="248px" |
data-height | Gewünschte Höhe des Bildes in Pixel oder Prozent. | auto | data-height="248px" |
data-opacity | Durchsichtigkeit des Bildes (opacity) | 0.8 | data-opacity="1" |
data-refresh | Interval in Sekunden, nachdem das Bild aktualisiert werden soll | 900 | data-refresh="3600" |
data-hide | Reading, nach dessen Wert entschieden wird, ob das Bild angezeigt wird, oder nicht. | STATE | data-hide="STATE" |
data-hide-on | Wert, bei dem das Bild nicht angezeigt wird | true,1,on | data-hide-on="aus" |
data-hide-off | Wert, bei dem das Bild angezeigt wird | !on | data-hide-on="an" |
data-hide-parents | Soll das HTML-Eltern-Element auch versteckt werden, ist hier der jQuery-Selektor einzugeben. | data-hide-parents="#BildDiv" |
CSS Klassen
Klasse | Beschreibung |
---|---|
nocache | Erzwingt das Neuladen eines Elementes (z.B. Bild, Seite, ...) bei jedem Aufruf statt der Zwischenspeicherung im Browser-Cache |
Hinweise
- Wenn data-url nicht definiert ist, wird die URL des Bildes aus data-path + data-get + data-suffix zusammengesetzt.
- Es kann nur data-url + data-refresh oder data-device + data-get verwendet werden, nicht beides gleichzeitig.
- Wenn die Farben von Bildern etwas blass erscheinen, liegt das an einer leichten Transparenz, mit der die Bilder dargestellt werden. Um das zu verhindern sollte data-opacity="1" gesetzt werden.
Beispiele
Bild aus dem Internet anzeigen
Dieses einfache Beispiel zeigt die Verwendung des Image-Widgets mit einer fest vorgegebenen Internetadresse.
<div data-type="image"
data-url="https://fhem.de/www/images/default/fhemicon.png"
data-size="100px"></div>
Soll verhindert werden, dass Browser das Bild aus ihrem Cache laden, anstatt von der Original-URL, muss die Klasse nocache verwendet werden:
<div data-type="image"
data-url="https://fhem.de/www/images/default/Eventuell_im_Cache_gespeichertes_Bild.png"
data-size="100px"></div>
<div data-type="image"
data-url="https://fhem.de/www/images/default/OriginalBild.png"
data-size="100px"
class="nocache"></div>
URL aus einem Reading
Hier wird die URL zum anzuzeigenden Bild aus dem STATE eines FHEM-Devices ausgelesen.
<div data-type="image"
data-device="dDummy"
data-get="STATE"
data-size="100px"></div>
Dynamische URL
In diesem Beispiel wird die URL zu einem Bild anhand eines Readings zusammen gebaut.
Das entsprechende FHEM-Device liefert z.B. folgende Readings:
channels_01_channel | 201 | 2017-02-12 09:50:50 |
channels_01_image | orf-1-hd.png | 2017-02-12 09:50:50 |
channels_01_name | ORF eins | 2017-02-12 09:50:50 |
<div data-type="image"
data-device="jnTVSender"
data-get="channels_01_image"
data-path="/fhem/images/TVSender/"
data-size="80px"></div>
data-part und data-substitution
Die URL des Bildes wird aus einem Readings gefiltert bzw. zusammengebaut.
<li data-row="5" data-col="4" data-sizey="3" data-sizex="6">
<header>URL fromreading with part</header>
<div data-type="image" data-device="ftuitest" data-part=".*(http.*.jpg).*" data-get="imgurl"></div>
</li>
<li data-row="5" data-col="10" data-sizey="3" data-sizex="3">
<header>URL fromreading with substitution</header>
<div data-type="image" data-device="ftuitest" data-substitution="s/.*(http.*.jpg).*/$1" data-get="imgurl"></div>
</li>