Fonts

  • Ich wollte mal für Twitter,RSS,Fussball Plugin die Fontsize änderbar machen

    Ich kann beim Label 'font14' setzen. Die Frage ist Wie bekomme ich raus wie viele Pixelhöhe hat die Schrift?
    Ich habe Zwei Zeilen und Zwischen den Zeilen sollte ja Abstand sein also Start Zeile1 + Schrifthöhe + 20 Pixelabstand=Zeile2

    Jemand ne Idee oder Ist das Genormt wie groß Schrift14 ist. Kenne mich mit Themes nicht aus ob das da varieren kann (alle von Schfit14 in Theme Y ist 10 Pixel Gross in Theme Z ist sie 20 Pixtel)

    jemand ne Idee

  • Hey,

    Eigentlich nicht, das kommt auf die Schrift an - generell ist die Schriftgröße in Pixel = Punkt
    https://de.wikipedia.org/wiki/Punkt_(Einheit)

    Wobei da von der Oberlang (ein kleines "l" oder "k") bis zur Unterlänge (ein leines "g") gemessen wird, teilweise sind Zeichen aber auch kleiner
    und berücksichtigen Zeichen aus anderen Zeichensätzen wie ein großes A mit Brevis (Ă)..
    Der Standart linespace in Kodi ist dabei immer 1.

    Am einfachsten wenn beide Font14 sind wäre ein label mit aligny = top.. dann hast immer den linespace auch als Abstand.
    Im Code läßt sich das ja mit einem [CR] einfügen (solange das label "mehrzeilig" true ist).. hast dann immer den selben Abstand.

    Grüße

  • Denke das ganze mit der Fontsize ist nicht so "einfach".

    Meinem Wissen nach, ist dies die Referenz zu einer "Box" in der sich ein Buchstabe befindet.

    Somit können unterschiedliche Schriften mit selber "font size" unterschiedlich hoch sein.

    Infos dazu z.B., hier


    Zitat von aus dem obigen Link

    The size of type, whether specified in pixels, points (1/72") or millimetres, is the height of an em-square, an invisible box which is typically a bit larger than the distance from the tallest ascender to the lowest descender.
    Given this is a somewhat arbitrary measure which

    • is dependent on the exact technical design of the font
    • can't be precisely measured from a printed or rasterized sample

    it's not very meaningful or useful, other than as an approximation.


    --

    In wie weit das "linespacing" direkt von der Schrift beeinflusst wird, oder ob dies immer genau der "fontsice" entspricht, kann ich leider nicht sagen.

    Das Linespacing (abstand in der vertikalen) kan man zumindest im skinning im Fonttag beeinflussen -> Link (unten)

  • @Marc0810 Das mit dem mehrzeilig klang gut
    Scheibar kann aber ein Controllabel ( http://mirrors.kodi.tv/docs/python-do…ml#ControlLabel ) Nicht mehrzeilig Sein :(


    Momentan kann meine Info Fenster bis zu 3 Zeilen Haben. Das hab ich bisher über 3 ControlLabels Realsiert, die scheinen Nicht Mehrzeilig zu sein.


    Die Frage bei anderen Fontsizes, wie ich den abstand der Zeilen Mache. Ich könnte jede Zeile Selber Positionierbar machen. Such halt nach ner schöneren Version WIe man das Machen kann

  • Scheibar kann aber ein Controllabel ( http://mirrors.kodi.tv/docs/python-do…xbmcgui.html#ControlLabel ) Nicht mehrzeilig Sein

    Hey,

    Ich kann halt nur von der Skinengin ausgehen, da gibt es wrapmultiline=true für sowas.
    Aber dort gehts auch ohne solange die höhe ausreichend ist..

    Das macht aber nur sinn wenn man die genaue Anzahl an Zeilen kennt und es keinesfalls länger werden kann.
    Das sähe im skincode dann in der Art aus:

    Code
    <control type="label">
    			<left>40</left>
    			<top>43</top>
    			<height>182</height>
    			<width>1200</width>
    			<aligny>top</aligny>
    			<font>font14</font>
    			<label>Tgxxx[CR]Tgyyy</label>
    		</control>


    Das label Beginnt auf der y-Achse bei 43 Pixeln, ist oben ausgerichtet, bietet genug Platz für mehr als eine Zeile und wird umbochen beim CR mit einem Zeilenabstand von 1
    solange in der Font.xml kein anderer Linespace drin steht..
    1 ist ja Default im linespace in Kodi und ist der Zeilenabstand gemessen von Unterlänge bis zur Grundlinie nächste Zeile (also ab kleines "g" unten bis Grundlinie nächste Zeile auf der die
    Zeichen stehen), ohne Durchschuss (zusätzabstand für bessere Lesbarkeit).
    Deine Zeilen sind also genau so weit auseinander wie die Schriftgröße.

    Das dürfte bei den meisten Schriften außer bei Sonderschriften dann nahezu gleich sein. Abweichen tun meist nur "Kreative Sonderschriften".
    Sofern die MAX Länge und Zeilenanzahl weißt und alles derselbe Font ist hast so ne realtiv elegante Möglichkeit ohne langes Gefriemel das der Abstand immer gleich ist.

    Aber sooo genau geht das in Kodi soweiso nicht, da man eh keine chance hat abzufragen welches Fontset geladen ist.
    Ich hatte das mal Angefragt es kam aber nie was zurück.

    Die ganze Art ist eigentlich nicht wirklich gut für Texte in verschiedenen Fonts oder Sprachen. In der Typografie geht man eigentlich in Deutschen Texten von einem Linespace 1,2 (120%)
    aus durch die vielen Oberlängen und bei kürzeren Textlängen oft sogar etwas mehr. In anderen Sprachen mit weniger Oberlängen ist das wiederrum noch wichtiger wie z.B. bei Ungarisch
    oder Lettisch die auch viele Akzente und Sonderzeichen haben auf Großbuchstaben. Da stößt bei einem geringerem Abstand oft der Akzent der zweiten Zeile auf Kleinbuchstaben der ersten.
    Aber das wird in Kodi nicht wirklich berücksichtigt :) .

    Grüße

  • Hmm, das ist doof , wie man das dan darstellen will wenn jeman die schrift ändern will
    Hab grad überlegt Textbox ist vileicht ne lösung da die Mehrzzeilig ist
    aber da wirds jetzt richtig lustig
    hab mal nen Demo Code geschrieben


    Wenn man das ganze ausführt kommt als erstes die Textbox

    Externer Inhalt l0re.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.


    Oben Ersteint Text. und verschwindet wieder . Alles ist gut, so funtkioniert auch das Twitter Plugin
    Wenn aber jetzt der Zweite Aufruf vond er Textbox Kommt (Selbe Position) Werden alle Texte auf der Seite durch Text ersetzt. bei allen Plugins (auf der Aktuellen Seite)

    Externer Inhalt l0re.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.


    Das muss ich nicht verstehen oder... Übrigens wollt bei Kodi.tv meinen Demo COde Hochladen. Geht nicht wird wohl als VIrus oder änliches erkannt :)

  • Hey,

    Sorry, von Code hab ich leider keine Ahnung..
    Textbox und label das höher ist mit aligny top ist im prinzip dasselbe außer das ne textbox noch vertikal scrollt und ein label horizontal.

    Da aber allein die Bezeichnung Font14 sowieso skinabhängig ist und da zwangsläufig eh jeder ran muss der es einbauen will,
    würde ich mir da keine großen Gedanken drum machen..
    Es gab im Orgforum mal ne Diskussion wie man Codern erlauben könnte Schriften zu nutzen, aber ich glaube die führte etwas ins leere.
    In anderen Skins hat man im Prinzip nur die Möglichkeit die Fonts des defaultskins auf den sich Addons beziehen mit zuintegrieren damit Kodi nicht
    Ich glaube Arial nimmt.

    Und solang es keine vernünftige Möglichkeit gibt das zu regeln bist da sowieso verloren. Sieht man ja im Default das sie auch keinen Wert drauf legen.
    Selbst im Estuary gibts viele textboxen mit abgeschnittenen Zeilen. Offenbar findet man das nciht so wichtig da eine Möglichkeit zu bieten über auto height
    oder sonst wie.

    Bei Dialogen, auch den internen von Kodi gab es das problem mit der aktualisierung auch mal in Jarvis, nur ob es derselbe Grund ist weiß ich nicht.
    Da war es teilweise so, das wenn der Ja/nein Dialoge als Frage zu fehlenden Addon mehr als einmal kam, beim zweiten "Aufploppen" immer leer war.
    Laut Ronnie soweit ichs noch weiß ist das ein Problem bei Modal Dialogen die wohl erst beim Fenster entladen wieder "freigegeben" werden.

    Grüße

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!