Euro-Symbol darstellen/drucken v1.9

Von Ausgaben mit der Gra-Engine über Generatoren bis zum Export in diversen Formaten

Moderator: Moderatoren

Antworten
bendixen
Rookie
Rookie
Beiträge: 15
Registriert: Mi, 27. Jun 2012 12:35

Euro-Symbol darstellen/drucken v1.9

Beitrag von bendixen »

Nachdem ich beginnend 1986 mit dBase, dann Clipper, 1999 mit xBase++ und seit 2012 mit der Version 1.9 ganz gut klargekommen bin, habe ich es nun auch gerade geschafft, die Druckausgabe auf Windows-Drucker mit Ausnahme des €-Zeichens hinzubekommen. Die Lektüre in diesem Forum hat mir leider bezügl. des €-Zeichens nicht geholfen. Alaska verspricht mir beim Kauf einer Version 2.0 würde mein Problem mit dem €-Zeichen keines mehr sein. Da ich mit Windows 10 Prof. 64-bit Betriebssystem ansonsten keinerlei Schwierigkeiten habe, sträubt sich mein Geldbeutel allein wegen des €-Zeichens gegen seine Entleerung. Gibt es unter Version 1.9 keine brauchbare Druckdarstellung des €-Zeichens? Ich verwende den OEM-Zeichensatz wegen der Umlaute.
Benutzeravatar
Koverhage
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2470
Registriert: Fr, 23. Dez 2005 8:00
Wohnort: Aalen
Hat sich bedankt: 102 Mal
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: Euro-Symbol darstellen/drucken v1.9

Beitrag von Koverhage »

euro_symbol := chr( 213 )
Gruß
Klaus
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16488
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: Euro-Symbol darstellen/drucken v1.9

Beitrag von Martin Altmann »

Und ggf. noch ein SetLocale( NLS_ICURRENCYEURO, "1" )

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Koverhage
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2470
Registriert: Fr, 23. Dez 2005 8:00
Wohnort: Aalen
Hat sich bedankt: 102 Mal
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: Euro-Symbol darstellen/drucken v1.9

Beitrag von Koverhage »

Ja, das hatte ich vergessen zu erwähnen ;-)
Gruß
Klaus
bendixen
Rookie
Rookie
Beiträge: 15
Registriert: Mi, 27. Jun 2012 12:35

Re: Euro-Symbol darstellen/drucken v1.9

Beitrag von bendixen »

Danke für die schnelle Hilfe: Im Ausdruck habe ich jetzt das €-Zeichen durch SetLocale(NLS_ICURRENCYEURO,"1") erreicht.

Müsste es nicht auch am Bildschirm möglich sein, oder verhindert mein cFontName = 'Lucida Console' die Bildschirm-Darstellung.
bendixen
Rookie
Rookie
Beiträge: 15
Registriert: Mi, 27. Jun 2012 12:35

Re: Euro-Symbol darstellen/drucken v1.9

Beitrag von bendixen »

... und natürlich viele Grüße von Jürgen (Jahrgang 1940).
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Euro-Symbol darstellen/drucken v1.9

Beitrag von AUGE_OHR »

bendixen hat geschrieben:Müsste es nicht auch am Bildschirm möglich sein, oder verhindert mein cFontName = 'Lucida Console' die Bildschirm-Darstellung.
compilierst du mit /PM:PM ?
wenn NEIN dann wird "Alaska CRT" im VIO Modus verwendet.

wo jetzt das € sitzt habe ich nicht zur Hand aber das kannst kannst du ja selbst ausprobieren mit einer Schleife

Code: Alles auswählen

PROCEDURE MAIN
LOCAL i

   SET ALTER TO EURO.TXT
   SET ALTER ON

   FOR i := 128 TO 255
      ? CHR(i)
   NEXT

   SET ALTER OFF
   SET ALTER TO

WAIT
RETURN
gruss by OHR
Jimmy
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Euro-Symbol darstellen/drucken v1.9

Beitrag von brandelh »

Hallo,

hier muss man zunächst zwingend unterscheiden wie du den Drucker ansprichst !
Falls du noch nach Clipper Art druckst und somit die Schriftarten des Druckers verwendest,
dann muss der Drucker dieses Zeichen enthalten und der passende Zeichensatz gewählt werden (nicht ganz einfach).

Angemerkt wurde schon dass diese Zeilen nötig sind (OEM und ANSI haben einen anderen Code, daher am Besten als Variable hinterlegen !):

Code: Alles auswählen

SetLocale( NLS_ICURRENCYEURO, "1" )
...
if IsOEM()
   euro_symbol := chr( 213 ) // bei OEM
else
   euro_symbol := chr( 128 ) // bei Ansi 
endif

*--------------------------------------------------------------------------------
function IsOEM()
return ( set(_SET_CHARSET) = 1 )
*--------------------------------------------------------------------------------
function IsAnsi()
return ( set(_SET_CHARSET) = 0 )

Ein XbpCrt() Programm, verwendet nun den CRT Font, dieser muss aber an der betreffenden Stelle auch ein € Zeichen besitzen !
"Alaska Crt" hat dies eingebaut, bei den anderen OEM Zeichensätzen ist das meist nicht der Fall.
Oft ist auch das § Zeichen falsch, Lucida Console kann zwar § aber eben kein € !

Solange man beim Drucken die XbpPrinter() (am Besten über meine HBPrintX Klasse) Klasse nutzt werden die Schriften von Windows verwendet.
Alle Standard Windowsschriften (Arial etc.) beherrschen das € Zeichen, somit ist so auch kein Druck Problem vorhanden.

Das ganze ist in der 1.90.x Hilfe als Suchbegriff "Euro Zeichen" zu finden, wobei auf die Seite
"SetLocale() - Landesspezifische Literale, Formate und Trennzeichen abfragen oder ändern." gesprungen wird.

In etwa der Mitte des Textes wird das dann schön erklärt.

"
Gruß
Hubert
Antworten