NEWS
dynamische Textgröße möglich?
-
Hallo zusammen,
ich lasse mir in einem Textfeld die aktuelle Wettervorhersage darstellen.
Die kann sehr kurz wie
"Heiter, Höchsttemperatur 10°C"
bis sehr lang
"Regen. Früh örtlich starker Regenfall möglich. Tiefsttemperatur 7C. Wind aus WSW mit 15 bis 30 km/h und böig. Regenrisiko 90 %. Niederschlag ca. 6 mm. Schneeakkumulation 100cm"
sein.
Gibt es eine Möglichkeit, die Textgröße so einzustellen, dass der vorgegebene Rahmen des Widgets immer mit der größt möglichen Schriftgröße ausgefüllt wird?
Bisher behelfe ich mir mit einem HTML Widget (welches ich irgendwo mal aufgeschnappt habe) und folgendem Wert. Damit werden aber nur zwei Fälle berücksichtigt: bei Textlänge < 100 ist die Schriftgröße 24px, bei größer 100 ist die Schriftgröße 13px. Geht das nicht auch irgendwie fließend?{wert:weatherunderground.0.forecastPeriod.0p.state;wert.length <100 ? "<div style='font-size: 24px'>"+wert+"</div>" :: "<div style='font-size: 13px'>"+wert+"</div>"}
-
grob und schnell zusammengestellt:
{wert:0_userdata.0.CONTROL-OWN.AAATEST.TestZahl2;wert <=30 ? "24px": wert >=100 ? "13px" : String(Math.round((-0.16*wert)+28.7))+"px" }
kleiner gleich 30 ist der wert 24
größer gleich 100 ist der wert 13
dazwischen ist eine lineare funktion -
Vielen lieben Dank!
Bei mir ging es mit deinem Code leider nicht. Dein Code auf mein Objekt angepasst sollte ja dann so aussehen oder?
{wert:weatherunderground.0.forecastPeriod.0p.state;wert <=30 ? "24px": wert >=100 ? "13px" : String(Math.round((-0.16*wert)+28.7))+"px" }
Im Ergebnis steht bei mir dann "NaNPx":
Ohne wirklich zu wissen, was ich da tue, habe ich deinen Berechnungsteil String(Math.round((-0.16*wert)+28.7)) in meine ursprüngliche Formel eingepflanzt. So scheint es zu funktionieren - aber vllt. kannst du da nochmal drüber schauen?!
{wert:weatherunderground.0.forecastPeriod.0p.state;wert <100 ? "<div style='font-size: 17px'>"+wert+"</div>" :: "<div style='font-size: String(Math.round((-0.16*wert)+28.7))px'>"+wert+"</div>"}