Seite 1 von 1
#1 Auffüllen mit Leerzeichen bei dynamischen Text
Verfasst: Do 9. Jan 2014, 08:52
von mr_claus
Dynamischer Text wird manchmal nicht angezeigt, beim Übertragen von 12-14 Zeichen wenn ich mich recht entsinne (danke Thomas für den Hinweis). Folgende Scripts können verwendet werden um Text für die Übertragung aufzufüllen.
Code: Alles auswählen
-- Pads str to length len with char from left
string.rpad = function(str, len, char)
if char == nil then char = ' ' end
return string.rep(char, len - #str) .. str
end
-- Pads str to length len with char from right
string.lpad = function(str, len, char)
if char == nil then char = ' ' end
return str .. string.rep(char, len - #str)
end
-- Pads str to length len with char from left and right
string.cpad = function(str, len, char)
if char == nil then char = ' ' end
return string.rep(char, math.floor((len - #str)/2)) .. str .. string.rep(char, math.ceil((len - #str)/2))
end
-- Dynamic Text Fix, if stringlen > 11 and 11 and string.len(line) < 15 then
if align == 'left' then line = string.lpad(line,20,' ')
elseif align == 'center' then line = string.cpad(line,20,' ')
elseif align == 'right' then line = string.rpad(line,20,' ')
end
end
return line
end
-- example
line = dyntextfix('0123456789012','center')
#2 RE: Auffüllen mit Leerzeichen bei dynamischen Text
Verfasst: Do 9. Jan 2014, 09:45
von Beleuchtfix
Für Domiq gibt es inzwischen eine direkten Befehl um Texte zu übertragen, könnte das Leben einfacher machen.
Schaut mal im Thread
Domiq Channels: Ergänzungen zur Dokumentation.
Viel Erfolg
Florian
#3 RE: Auffüllen mit Leerzeichen bei dynamischen Text
Verfasst: Do 9. Jan 2014, 12:15
von Uwe
Das stimmt schon, Florian.
Die Texte sind aber (wie auch in der PCK-Doku beschrieben) immer um die 12 Zeichen erst/oder mit einem Leerzeichen beendet.
Dieses kleine 'Manko' gleicht Claus mit den Skripten (hoffentlch) aus (ich hab's noch nicht probiert).
Ähnliches machen die Jungs beim IPS übrigens auch, da hat
Clemens ein Skript geschrieben (habe ich bislang auch noch nicht probiert).
Grüße, Uwe
#4 RE: Auffüllen mit Leerzeichen bei dynamischen Text
Verfasst: Do 9. Jan 2014, 12:20
von Beleuchtfix
Moin Uwe,
ich habe bei mir verschiedene Längen probiert und es ging immer problemlos mit dem LCN.text Befehl. Allerdings kenne ich die "kritischen Größen" nicht genau, da käme es auf einen Versuch an. Bei dem Befehl muss ich einfach die Zeile und den Text eingeben, ich hatte den Eindruck, das der Rest intern geregelt wird.
Gruß
Florian
#5 RE: Auffüllen mit Leerzeichen bei dynamischen Text
Verfasst: Do 9. Jan 2014, 13:31
von mr_claus
Dann versuch doch mal den String "1234567890123" dorthin zu schicken, verkürze und verlängere ihn, wenn es nicht mittlerweile behoben ist, dann sollte der String bei einer Länge von 12-14 Zeichen nicht am Display auftauchen, deshalb ergänze ich diesen um Leerzeichen, entweder davor, dahinter oder beides, je nachdem ob es linksbündig, zentriert oder rechtsbündig angezeigt werden soll.
#6 RE: Auffüllen mit Leerzeichen bei dynamischen Text
Verfasst: Do 9. Jan 2014, 14:17
von Beleuchtfix
Mhm, stimmt in etwa, wenn ich 13 Zeichen anzeige oder 25, dann wird das letzte Zeichen verschluckt, der Rest aber doch angezeigt, 12 und 14 sind ok, ebenso 24 und 26 Zeichen. Mit zusätzlichen Leerzeichen geht es wieder.
Ich Schreibe mal Piotr, die finden bestimmt wieder einen Workaround über diesen LCN Fehler.
Gruß
Florian
#7 RE: Auffüllen mit Leerzeichen bei dynamischen Text
Verfasst: Do 9. Jan 2014, 15:04
von mr_claus
Meine Scripts sind der Workaround, Piotr kann da mit Sicherheit eine finale Lösung liefern, bis dahin funktionieren die Scripts ganz gut.
#8 RE: Auffüllen mit Leerzeichen bei dynamischen Text
Verfasst: Do 9. Jan 2014, 19:13
von Thomas
LCN.text.0.7.1=12345678901 geht
LCN.text.0.7.1=123456789012 geht nicht
LCN.text.0.7.1=1234567890123 geht nicht
LCN.text.0.7.1=12345678901234 geht.
am GT4D "Zebra"(also uralt..

)
Das wiederholt sich dann.
gruss thomas
ps. Danke Claus, habe ich aber noch nicht getestet, da meine Texte von der LinHK kommen....
pps. wenn ich die Laufschrift vom Zebra mit neuen GT4D vergleiche, gefällt mir das alte besser, da langsamer.
#9 RE: Auffüllen mit Leerzeichen bei dynamischen Text
Verfasst: Do 9. Jan 2014, 19:55
von LuckyLPA
Moin.
Ist das nur ein Problem mit dem Base? Habe das mal eben per PCK-Befehl aus der GVS probiert und es geht wunderbar... :confused:
mfg Carsten
#10 RE: Auffüllen mit Leerzeichen bei dynamischen Text
Verfasst: Do 9. Jan 2014, 20:38
von Thomas
Hallo Carsten,
per PCK-Befehl kein Problem.
Steht doch in der Doku, Textende=weniger als 12Zeichen im Block
Wenn es genau 12 Zeichen im Block sind, braucht es den nächsten Block mit kürzer 12 Zeichen.
Gruss Thomas - der nur den DYN Text für Anzeigen im Display nutzt, da geht einfach mehr.