Bra Ket

  • VB.NET
  • .NET (FX) 4.0

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von Eierlein.

    Hallo,

    komme leider nicht weiter.

    Will Bra und Ket (also diese stumpfe Klamern in der Dirac-Notation) in Text_Feld einfügen.
    Kanns weger reinkopieren noch mit CharW(10216 oder &H207F) was machen.
    Seltsam: beim Schreiben im Code kann ich es zwischen "" aus der Zeichentabelle reinkopieren, aber in der Ausgabe erscheint nur ein kleines, schmales, hohes Rechteck als Platzhalter.
    Genauso geht ein tiefgestelltes, kleines n nicht- zB: an(n tiefgestellt).
    Ein hochgestelltes n klappt wiederum, wie in xn(n hoch).
    Kann mir da jemand helfen?
    Danke

    hybernate5
    Kannst Du uns bitte den Unicode-Codepoint des Zeichens nennen, das Du einfügen willst? Wenn ich das richtig verstanden habe, ist es 0x207f. Das wäre laut der Unicode Tabelle das Zeichen SUPERSCRIPT LATIN SMALL LETTER N. Das würde also hinkommen.
    Dieses Zeichen lässt sich als eine einzige UTF-16 Code-Unit abbilden, nämlich einfach 0x207f. Das heißt, Convert.ToChar(&H207f) gibt dieses Zeichen korrekt zurück.
    Dieser Code funktioniert bei mir einwandfrei und im Label wird
    x^n-5
    angezeigt*:

    VB.NET-Quellcode

    1. Label1.Text = "x" & Convert.ToChar(&H207F) & "-5"

    (In VB ist Convert.ToChar übrigens die zu verwendende Funktion, um UTF16 Code-Units zu Zeichen zu konvertieren.)

    Wenn das bei Dir zu kaputten Zeichen führt (also eben diese Rechtecke), dann muss woanders ein Problem sein.


    *Edit:
    Hmmm. LaTeX scheint wohl nicht mehr einwandfrei zu funktionieren.
    Gemeint war: ein x, dann ein hochgestelltes n, dann Minus und dann 5.
    "Luckily luh... luckily it wasn't poi-"
    -- Brady in Wonderland, 23. Februar 2015, 1:56
    Desktop Pinner | ApplicationSettings | OnUtils
    hochgestelltes , kleines n funktionierte schon so (hab ja geschrieben)- das hab ich eben mit CharW(&H207F) hinbekommen.

    Mein Problem ist eben jetzt nur noch das tiefgestellte, kleine n als zB. Index einer Folge ai mit i={1,2,...,n}- das i als Index wird eben tiefgestellt. So müsste es eben mit dem n gehen.

    Die Braket:Zeichen hab ich mit deinem: Convert.ToChar(&H3008)+"x|y"+Convert.ToChar(&H3009) doch noch hinbekommen- super! Danke für diese Idee mit dem Convert.ToChar().
    Hab bis jetzt die anderen Zeichen einfach nur mit CharW(...) hinbekommen, nur eben nicht die Brakets.
    Also das wäre erledigt bis auf das tiefgestellte n. Hier klappt es nicht.
    Hättest du vielleicht noch eine Idee?

    Danke dir.

    hybernate5