LL und Sonderzeichen

Moderator: Moderatoren

Antworten
Paul
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 43
Registriert: Mi, 21. Mär 2007 15:22
Wohnort: 1230 Wien

LL und Sonderzeichen

Beitrag von Paul » So, 01. Jul 2018 15:54

Hi allerseits,

habe das Problem, dass ich in L&L (Version 12) slowenische Zeichen habe,
die im Textmodus (Link mit STACK) diese über die CodePage 852 dargestellt werden.

Nachdem Xbase die Codepage 852 nicht zulässt, suche ich einen Weg, diese LL beizubringen.

Die einzige Mögichkeit, die ich bis jetzt gefunden habe ist, dass ich beim Font
das Skript auf mitteleuropäisch stelle, da sehe ich die Sonderzeichen, jedoch an anderen stellen.

Ich versuche daher vergeblich, vorher einen Strtran zB. Chr(172) auf Chr(200) ==
172 auf chcp 852 = C mit Hatschek und im mitteleurop. Font ist es 200.

Funkt nicht bzw. l&l IGNORIERT DAS:

Hab auch versucht mit ChrSubst$ und auch mit Strsubst$ tu tauschen.
Ja, aber ich kann nur 1 einzelnes Zeichen transferieren.

Wenn ich jedoch sage wie bei Strtran( Chr(alt)+Chr(alt), Chr(neu)+Chr(neu)),
so stellt LL anstelle jeweils dem einzelnen zeichen die ganze neue zeichenkette rein und die weiteren zeichen die
getauscht werden sollten, werden ignoriert.

Wie kann ich es in LL machen?

Kann es am der Version liegen? == LL-Version 12

Danke und LG Paul

Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 14549
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Kontaktdaten:

Re: LL und Sonderzeichen

Beitrag von brandelh » Mo, 02. Jul 2018 2:40

Zeichenketten mit codepage bedeuten nichts anderes, als dass die Zeichen anders angezeigt werden.
Wenn in deinen Datein ein chr(x) bei L&L ein chr(y) benötigt, dann kann man das in Xbase++ einfach mit strtran() ersetzen,
evtl. muss man vorher auf chr(255) umsetzen, damit man nicht die falschen umsetzt. An L&L kann man die Info per Variablen übergeben.

Wichtig, Zeichen sind intern nichts anderes als die Nummer bei ASC() bzw. chr() erst beim Drucken wird dann die Bedeutung sichtbar.
Gruß
Hubert

Paul
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 43
Registriert: Mi, 21. Mär 2007 15:22
Wohnort: 1230 Wien

Re: LL und Sonderzeichen

Beitrag von Paul » Fr, 06. Jul 2018 11:11

Hallo Hubert,

hab dies auch gemacht, aber es wird in L&L ignoriert

Was hab ich gemacht:
Habe in LL das font Arial Unicode mit Zeichensatz 238 == Zentral/Osteuropa
eingestellt, wo ich all die Zeichen für slowenisch drin habe.

Habe auch einen Strtran vorher gemacht . zB für C mit Hatschek eine strttan auf Chr(200) gemacht,
was jedoch von LL ignoriert wird.

was hast du gemeint mit vorher chr(255) ?

wie meinst du das mit den Variablen in LL ?


was mach ich falsch?

Noch was: ich kann zwar auch in LL einen strtan == in LL chrSubstr$ machen,
kann jedoch nur 1 zeichen transferieren.

Vielleict gibt es in LL eine Mögichkeit, so wie in xbase dass ich mir eine function erstelle,
wo ich alle zeichen hintereinander mit strtran ändern kann ?

danke und LG Paul

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 11427
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: LL und Sonderzeichen

Beitrag von AUGE_OHR » Fr, 06. Jul 2018 18:07

hi Paul,

ich habe versucht zu erklären das man "so" keinen Erfolg haben wird.
die Auswahl eines Font / Codepage ändert NICHT den "Wert" eines Zeichens !

so wie ich das sehe hast du eine OEM DBF dessen 1st Byte 03h ist.
bevor du den grossen Sprung nach L & L machst würde ich es erst mal nur in GUI versuchen z.b. XbpBrowse()
schon da wirst du vermutlich Probleme mit deinen slowenisch Zeichen haben und das Problem musst du vorher beheben.

Windows will ANSI haben was eine FOX DBF (30h) kann.
Erstelle dir mal eine neue FOX DBF und gib, unter GUI, die Zeichen ein.
wenn die Ausgabe unter GUI funktioniert dann kannst du dich, mit dem selben Font, an L & L machen.
gruss by OHR
Jimmy

Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 14549
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Kontaktdaten:

Re: LL und Sonderzeichen

Beitrag von brandelh » Sa, 07. Jul 2018 18:25

nun ja, bei der QuickPDF kann man zwischen ANSI und Unicode Parametern (2 Zeichen je Byte) wählen, und es gibt Funktionen die das sauber umsetzen sollen.
Wenn man Glück hat, kann man UTF8 als Parameter übergeben und so dann die richtigen Byte-Werte zu den passenden Zeichen wandeln.

Ob das bei L&L auch so geht oder anders weiß ich nicht, ich habe es nicht im Einsatz, konnte mich nur daran erinnern, dass hier beschrieben wurde,
dass es neben dem direkten DBF Zugriff auch die Möglichkeit der Werteübergabe per Variablen gibt. Wie man es richtig macht und was es genau kann weiß ich nicht.
Gruß
Hubert

Antworten