[gelöst] Möchte Bildchen für "Aufnahme läuft" NICHT transparent

  • Hallo


    Bin hier etwas am Basteln und komme nicht weiter, ich habe das:


    <ePixmap pixmap="dmm-HD/AC_images/ico_rec_off.png" position="1050,7" size="57,20" zPosition="1" alphatest="blend"/>
    <widget pixmap="dmm-HD/AC_images/ico_rec_on.png" position="1050,7" size="57,20" zPosition="2" source="session.RecordState" render="Pixmap" alphatest="blend">
    <convert type="ConditionalShowHide">Blink</convert>
    </widget>


    So funktioniert das sehr gut, bei Aufnahme blinkt es.
    Nur ist bei Aufnahme das Bildchen transparent, man sieht das laufende Programm durch das Bildchen.
    Was kann ich machen um das zu ändern.
    Bei ico_rec_off.png ist es nicht transparent.

    Gruß _\\\||||///
    meggam O,O n
    --oOOo----------oOOo--

    2 Mal editiert, zuletzt von meggamoon ()

    • Offizieller Beitrag

    Ist das [ico_rec_on.png] bereits transparent, dann musst es mit nem Grafikprogramm bearbeiten, das es keine Transparenz mehr hat.

  • Hinter dem Bild ist ja das Bild der Infobar, das ganze fängt so an:


    <screen name="InfoBar" position="0,540" size="1280,180" title="InfoBar" backgroundColor="transparent" flags="wfNoBorder">
    <ePixmap position="0,0" zPosition="-1" size="1280,180" pixmap="dmm-HD/AC_images/ac-infobar-mit-senderfeld.png"/>
    ...
    ...


    Dann kommt irgendwann das:


    <ePixmap pixmap="dmm-HD/AC_images/ico_rec_off.png" position="1050,7" size="57,20" zPosition="1" alphatest="blend"/>
    <widget pixmap="dmm-HD/AC_images/ico_rec_on.png" position="1050,7" size="57,20" zPosition="2" source="session.RecordState" render="Pixmap" alphatest="blend">
    <convert type="ConditionalShowHide">Blink</convert>
    </widget>


    Transparent sollte das Bildchen schon sein, sprich man soll durch die Freiräume das Hintergrundbild (ac-infobar-mit-senderfeld.png) sehen können.


    Nicht aber GANZ transparent das das laufende Fernsehprogramm durch kommt.

    Gruß _\\\||||///
    meggam O,O n
    --oOOo----------oOOo--

    • Offizieller Beitrag

    Dann musst den Hintergrund des PNG´s transparent lassen und nur die Schrift bzw. Farbe ohne Transparenz

  • oder die zPosition auf zPositon=9 ändern
    ich habe das ählich mit der HDD activty gelöst


    Anzeige HDD in der Infobar


    HDD = Grün = standby
    HDD = Blau = active
    HDD = Blau/Rot blinkend = Aufnahme auf HDD
    HDD = Grün/Rot Blinkend = Aufnahme ins Netzwerk (HDD = standby)


    sieht etwa so aus, HDD als Schrift in green und blue mit eigenem render, das rote record.png dann darübergelegt


    Code
    <eLabel text="HDD" position="903,29" size="75,24" font="Regular;18" backgroundColor="black" foregroundColor="green"  valign="top" halign="left"  zPosition="1" transparent="1" /> 
                    <widget render="HDDStatus" position="903,29" size="75,24" font="Regular;18" backgroundColor="black" foregroundColor="cyan" source="global.CurrentTime" valign="top" halign="left" zPosition="2" transparent="1"/>
    <!-- blinkendes Aufnahme - hddrecord.png darübergelegt, zPosition "ganz oben" -->
                    <widget source="session.RecordState" render="Pixmap" position="904,35" size="37,12" pixmap="DMConcinnity-HD-FBT/icons/hddrecord.png" zPosition="9" alphatest="blend">
    	    		  <convert type="ConditionalShowHide">Blink</convert>
    	    	</widget>

    Gruß Fred


    Die Dreambox ist tot, es lebe die Dreambox


    Einmal editiert, zuletzt von Fred Bogus Trumper ()

  • Ich weiß nicht, irgendwie hab ich den Verdacht ihr versteht nicht ganz was ich meine - oder ich versteh nicht was ihr meint ... :-))


    Habe hier 2 Bilder gemacht:
    1. keine Aufnahme
    2. Aufnahme läuft - und da sieht man das TV-Programm durch

  • versuch doch mal zPostition=9 - damit wird die Voder/Hintergrundreihenfolge gesteuert.


    dein transparentes ico_rec_on.png liegt dann über der infobar.png über und dem ico_rec_off.png das angezeigt wird, wenn keine Aufnahme läuft (lt. deinem Screenshot), d.h. der Hintergrund der der Infobar und der Rahmen um REC scheint dann durch



    \\Edit


    oder du nimmst das ico_rec_off.png und legst in deinem Bildbearbeitungsproblam das ico_rec_on.png eine Ebene darüber und speicherst es als ico_rec_on.png neu ab (die Ebenen zusammenfassen)

    Gruß Fred


    Die Dreambox ist tot, es lebe die Dreambox


    Einmal editiert, zuletzt von Fred Bogus Trumper ()

  • Müßte meinem Verständnis nach so wie ich es habe passen:
    zPosition="-1" - Hintergrundbild
    zPosition="1" - Bild HDD off
    zPosition="2" - Bild HDD on


    Hab aber auch das getestet:
    zPosition="-1" - Hintergrundbild
    zPosition="1" - Bild HDD off
    zPosition="9" - Bild HDD on


    ändert sich nichts.

    Gruß _\\\||||///
    meggam O,O n
    --oOOo----------oOOo--

  • hmm, verschmal für das ico_rec_off.png die Transparenz hinzuzufügen <ePixmap pixmap="dmm-HD/AC_images/ico_rec_off.png" position="1050,7" size="57,20" zPosition="1" alphatest="blend" transparent="1"/>


    oder alphatest auf "on" für ico_rec_off.png ändern, ist schon ne Weile her, dass ich mich mit dem gleichen Problem rumgeärgert habe


    sonst häng hier mal die beiden .png's an, ich hätte noch eine andere Idee

    Gruß Fred


    Die Dreambox ist tot, es lebe die Dreambox


    Einmal editiert, zuletzt von Fred Bogus Trumper ()

  • Zitat

    Original von Fred Bogus Trumper
    hmm, verschmal für das ico_rec_off.png die Transparenz hinzuzufügen <ePixmap pixmap="dmm-HD/AC_images/ico_rec_off.png" position="1050,7" size="57,20" zPosition="1" alphatest="blend" transparent="1"/>


    oder alphatest auf "on" für ico_rec_off.png ändern, ist schon ne Weile her, dass ich mich mit dem gleichen Problem rumgeärgert habe


    sonst häng hier mal die beiden .png's an, ich hätte noch eine andere Idee


    beides probiert - keine Änderung


    anbei bildchen - für on hab ich eine zweite version getestet - bracht auch keine Änderung

  • Zitat

    Original von LukaNoah
    Das ist ein Bug im OE2.2. Haben wir schon oft bei den Devs angesprochen, leider wurde es noch nicht behoben.


    OK - Danke für die Info - kann ich ja ewig probieren ...

    Gruß _\\\||||///
    meggam O,O n
    --oOOo----------oOOo--

  • oh, dann kann ich lange testen, mit OE2.0 klappte das hier mit den icons von meggamoon.
    Dnn bleibt nur als Workaround die png.s ohne Transparenz zu erstellen, also mit infobar Hintergrund im icon ...



    meggamoon
    bitte nächstes mal die betroffene Box bzw. das OE dazuschreiben

    Gruß Fred


    Die Dreambox ist tot, es lebe die Dreambox


    Einmal editiert, zuletzt von Fred Bogus Trumper ()

  • Zitat

    Original von Fred Bogus Trumper

    Code
    <widget render="HDDStatus" position="903,29" size="75,24" font="Regular;18" backgroundColor="black" foregroundColor="cyan" source="global.CurrentTime" valign="top" halign="left" zPosition="2" transparent="1"/>


    Damit bekomme ich einen Greenscreen:


    File "/usr/lib/enigma2/python/skin.py", line 708, in readSkin
    parseWidgets(name, myscreen, screen, skin_path_prefix, visited_components)
    File "/usr/lib/enigma2/python/skin.py", line 730, in parseWidgets
    parseWidget(name, widget, screen, skin_path_prefix, visited_components, group)
    File "/usr/lib/enigma2/python/skin.py", line 876, in parseWidget
    renderer_class = my_import('.'.join(("Components", "Renderer", wrender))).__dict__.get(wrender)
    File "/usr/lib/enigma2/python/Tools/Import.py", line 2, in my_import
    mod = __import__(name)
    ImportError: No module named HDDStatus

    Gruß _\\\||||///
    meggam O,O n
    --oOOo----------oOOo--

  • Zitat

    Original von Fred Bogus Trumper
    meggamoon
    bitte nächstes mal die betroffene Box bzw. das OE dazuschreiben


    Gibt es für das OE2.0 auch ein Gemini 3.3 ?


    Ich dachte wenn ich hier (Gemini 3.3 Skins) poste ist es klar das ich an einer 7080 teste - sorry.

    Gruß _\\\||||///
    meggam O,O n
    --oOOo----------oOOo--

  • klar, weil dein Skin den render="HDDStatus" nicht unterstützt bzw. du den render nicht installiert hast, den habe ich mir für meinen skin selbst "gezimmert"


    das war nur als Beispiel gedacht, wie das im OE2.0 mit der zPositon geklappt hat


    sorry für die Irreführung


    mach mal einen screenshot von deiner Infobar ohne laufende Aufnahme und häng das mal hier an


    grab -op


    und häng das /tmp/screenshot.png mal hier an



    \\Edit

    Zitat

    Original von meggamoon


    Gibt es für das OE2.0 auch ein Gemini 3.3 ?


    Ich dachte wenn ich hier (Gemini 3.3 Skins) poste ist es klar das ich an einer 7080 teste - sorry.


    du hast recht, das hatte ich übersehen

    Gruß Fred


    Die Dreambox ist tot, es lebe die Dreambox


    3 Mal editiert, zuletzt von Fred Bogus Trumper ()

  • Zitat

    Original von Fred Bogus Trumper
    mach mal einen screenshot von deiner Infobar ohne laufende Aufnahme und häng das mal hier an


    Habe jetzt den Bildchen die Transparentz genommen und statt dessen den richtigen Teil des Hintergrundbildes verpasst - so gehts.

  • genau, so hätte ich es auch gemacht


    wobei du so das ico_rec_off.png original belassen könntest - die position darf sich nur nicht mehr großartig ändern ..

  • OK - vielen Dank mal für deine Hilfe !


    ... aber das mit dem HDDStatus würd mich trotzdem noch interessieren.
    Du hast so was nicht zuuuufällig auch für´s OE2.2 gezimmert ???


    :winking_face:

    Gruß _\\\||||///
    meggam O,O n
    --oOOo----------oOOo--

  • ist ein angepasster Renderer von vali


    fragt mit hdparm den Status von /dev/sda ab (gegebenenfalls ändern), wenn nicht "standby" gibt er den Rückgabewert HDD aus, den ich im skin über den Text "HDD" mit der Farbe cyan lege, funktoniert aber nur wenn die HDD nicht anspringt, wenn der Status mit hdparm abgefragt wird (klappte mit den meisten WD oder Samsung 2,5" Platten die ich verbaut hatte)


    dann habe ich HDD active rot anzeigen lassen, einen screenshot gemacht und daraus aus ein record.png erstellt, dass ich über den Text "HDD" bei einer Aufnahme lege



    Pfad, position, size etc. musst du dann an deinen skin anpassen

    Code
    <eLabel text="HDD" position="903,29" size="75,24" font="Regular;18" backgroundColor="black" foregroundColor="green"  valign="top" halign="left"  zPosition="1" transparent="1" /> 
                    <widget render="HDDStatus" position="903,29" size="75,24" font="Regular;18" backgroundColor="black" foregroundColor="cyan" source="global.CurrentTime" valign="top" halign="left" zPosition="2" transparent="1"/>
    <!-- blinkendes Aufnahme - hddrecord.png darübergelegt, zPosition "ganz oben" -->
                    <widget source="session.RecordState" render="Pixmap" position="904,35" size="37,12" pixmap="DMConcinnity-HD-FBT/icons/hddrecord.png" zPosition="9" alphatest="blend">
    	    		  <convert type="ConditionalShowHide">Blink</convert>
    	    	</widget>


    musst mal testen, ob das im OE2.2 klappt, die HDDStatus.py gehört nach /usr/lib/enigma2/python/Components/Renderer/ wenn sich im OE2.2 nichts geändert hat. Enigma2 neu starten, damit der Renderer aktiv wird


    einfach mal testen