AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Summenzeichen (Σ) in Courier in TRichEdit anzeigen
Thema durchsuchen
Ansicht
Themen-Optionen

Summenzeichen (Σ) in Courier in TRichEdit anzeigen

Ein Thema von marcibaer · begonnen am 18. Jun 2012 · letzter Beitrag vom 24. Jun 2012
Antwort Antwort
marcibaer

Registriert seit: 27. Sep 2006
Ort: Inden
76 Beiträge
 
Delphi XE2 Professional
 
#1

Summenzeichen (Σ) in Courier in TRichEdit anzeigen

  Alt 18. Jun 2012, 12:56
Hallo zusammen!

Ich versuche das Summenzeichen in einem String in einem TRichEdit anzuzeichen.
Das funktioniert auch, aber die ganze Zeile wird dann statt in Courier in einer TrueType-Schrift angezeigt, was mit die komplette Formatierung durcheinander bringt.

Gibt es das Zeichen unter Courier nicht oder wie kann ich es schafften, dass wenigstens die Formatierung für den Rest der Zeile erhalten bleibt, falls es das Zeichen unter Courier nicht geben sollte!?

Vielen Dank für die Hilfe!
Marc
  Mit Zitat antworten Zitat
hsg

Registriert seit: 24. Apr 2006
Ort: Wustermark
354 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: Summenzeichen (Σ) in Courier in TRichEdit anzeigen

  Alt 18. Jun 2012, 13:13
Ich habe eben bei mir auf dem Rechner mit einem FontViewer nachgesehen, es scheint nicht Teil des Zeichensatzes zu sein. Daher wirst du mit Courier alleine nicht glücklich werden.
Entweder eine alternative Schriftart nehmen (Tante Google!) oder das einzelne Zeichen in einer anderen Schriftart verwenden, während der Rest in Courier gesetzt wird.

Füllst du das RichEdit vom Programm aus oder muss der Benutzer den Text alleine eingeben?
  Mit Zitat antworten Zitat
Iwo Asnet

Registriert seit: 11. Jun 2011
313 Beiträge
 
#3

AW: Summenzeichen (Σ) in Courier in TRichEdit anzeigen

  Alt 18. Jun 2012, 14:02
Symbol-Zeichensatz sollte auf jedem Windows-PC installiert sein.
Sollte dann das große 'S' sein, wenn ich mich nicht irre.
Delphi-Quellcode:
  RichEdit1.SelAttributes.Name := 'Courier';
  RichEdit1.Lines.Text := 'Text mit S (Summenzeichen)';
  RichEdit1.SelStart := 9;
  RichEdit1.SelLength := 1;
  RichEdit1.SelAttributes.Name := 'Symbol';
  Mit Zitat antworten Zitat
marcibaer

Registriert seit: 27. Sep 2006
Ort: Inden
76 Beiträge
 
Delphi XE2 Professional
 
#4

AW: Summenzeichen (Σ) in Courier in TRichEdit anzeigen

  Alt 18. Jun 2012, 16:42
Ich generiere die Ausgaben für das RichEdit aus dem Programm heraus.
Die Zeilen landen zuerst in 'ner StringList und werden dann entweder per RichEdit angezeigt oder als Datei gespeichert - deshalb wird die Idee von IwoAsnet so wohl direkt funktionieren.
Da müßte ich dann vor'm Anzeigen die "S" oder wie auch immer die vorher kodiert sind, rausfiltern.
Marc
  Mit Zitat antworten Zitat
marcibaer

Registriert seit: 27. Sep 2006
Ort: Inden
76 Beiträge
 
Delphi XE2 Professional
 
#5

AW: Summenzeichen (Σ) in Courier in TRichEdit anzeigen

  Alt 23. Jun 2012, 15:23
Hallo zusammen!

Irgendwie stehe ich auf dem Schlauch!
Ich probiere nun Folgendes, um das Summenzeichen (als "°S" kodiert) anzuzeigen, aber es klappt nicht:
Delphi-Quellcode:
      with Memo1 do
        begin
          Lines := Eintraege;
          with Lines do
            for i := 0 to Count - 1 do
              begin
                Start := 1;
                repeat
                  o := PosEx('°S',Lines[i],Start);
                  if (o > 0) then
                    begin
                      Start := o;
                      Eintrag := Lines[i];
                      System.Delete(Eintrag,o,1);
                      Lines[i] := Eintrag;
                      SelStart := o;
                      SelLength := 1;
                      SelAttributes.Name := 'Symbol';
                    end;
                until (o = 0);
              end;
        end;
Eintraege ist die StringList, in der ich die Ausgabe anlege.
Seltsamerweise werden, wenn ich z.B. SelLength = 10 habe, einige Zeichen in den oberen Zeilen umgewandelt, obwohl das Summenzeichen erst ca. 50 Zeilen später auftaucht!

Ich hoffe, das sagt Euch etwas...

Vielen Dank!
Marc
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#6

AW: Summenzeichen (Σ) in Courier in TRichEdit anzeigen

  Alt 24. Jun 2012, 00:05
Ja klar, weil o relativ zum Zeileanfang ist, jedoch SelStart nen absoluten Wert verlangt...
Hau die For i Schleife raus und arbeite mit Lines.Text..
(Da man dieses Property nicht einfach wie ein String behandeln kann, wäre es angebracht, den Inhalt zuerst in ne temp. String Variable zu kopieren...)
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:28 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz