Wie kann ich die Ausgabe in einem Diagramm in einer einzeiligen Schriftart gestalten?

 

Comment() - zeigt Informationen in Proportionalschrift auf dem Diagramm an, hat aber Schwierigkeiten mit der Formatierung von z.B. Tabellen.

Wie kann ich die Informationen im Diagramm mit Hilfe von Comment() in einer einzeiligen Schriftart anzeigen?

 
Yury Kirillov:

Comment() - zeigt Informationen in Proportionalschrift auf dem Diagramm an, hat aber Schwierigkeiten mit der Formatierung von z.B. Tabellen.

Wie kann ich die Informationen im Diagramm mit Hilfe von Comment() in einer einzeiligen Schriftart anzeigen?

NurOBJ_LABEL

 
Vitaly Muzichenko:

NurOBJ_LABEL


Es ist eine Grafik, es ist alles klar.

 
Yury Kirillov:

Es ist eine Grafik, es ist alles klar.

Sie können nichts gegen denKommentar tun, er hat einen etwas anderen Zweck

 
Vitaly Muzichenko:

Sie können nichts dagegen tunKommentar, es hat einen etwas anderen Zweck


Wie wird die Schriftart in Comment definiert?

 
Yury Kirillov:

Was bestimmt die Schriftart in Comment?

Nicht wirklich verstanden, aber es scheint die Systemeinstellungen des Betriebssystems zu übernehmen

 
Vitaly Muzichenko:

Ich habe es nicht wirklich verstanden, aber es scheint die Systemeinstellungen des Betriebssystems zu übernehmen


Es scheint sich um eine Terminal-Schriftart zu handeln, und es ist anscheinend wirklich unrealistisch, sie zu manipulieren.

 

das hat man Ihnen gesagt, geben Sie es selbst aus, und suchen Sie an beliebiger Stelle und in beliebiger Schriftart eine Monospace-Schrift in den Winden

Wenn Sie es live aus der Software herausschneiden, können Sie es sicher herausfinden.

bool CreateLabel(string name,int x,int y=10)
  {
   if(!ObjectCreate(0,name,OBJ_LABEL,0,0,0))
      return false;;
   ObjectSetInteger(0,name,OBJPROP_ANCHOR,ANCHOR_LEFT_LOWER);
   ObjectSetInteger(0,name,OBJPROP_CORNER,CORNER_LEFT_LOWER);
   ObjectSetInteger(0,name,OBJPROP_XDISTANCE,x);
   ObjectSetInteger(0,name,OBJPROP_YDISTANCE,y);
   ObjectSetInteger(0,name,OBJPROP_FONTSIZE,FontSize);
   ObjectSetInteger(0,name,OBJPROP_COLOR,FontColor);
   ObjectSetInteger(0,name,OBJPROP_SELECTABLE,true);
   ObjectSetString(0,name,OBJPROP_FONT,FontName);
   ChartRedraw();
   return true;
  }

// где-то выводим строку с именем
ObjectSetString(0,"SIP_"+lNames[2],OBJPROP_TEXT,lNames[2]+DoubleToString(sprd,_Digits)+",  RealSpread="+DoubleToString(Ask-Bid,_Digits));

**

 
Alexey Volchanskiy:

das hat man Ihnen gesagt, geben Sie es selbst aus, und suchen Sie an beliebiger Stelle und in beliebiger Schriftart eine Monospace-Schrift in den Winden

Wenn Sie es live aus der Software herausschneiden, können Sie es sicher herausfinden.

**


Danke, Alexey! Ich habe kein Problem mit der Ausgabe von grafischen Schriftarten. Ich dachte, ich könnte die Systemschriftarten irgendwie reparieren.

 
Yury Kirillov:

Danke, Alexey! Ich habe keine Probleme mit der Ausgabe von grafischen Schriftarten. Ich dachte, es gäbe vielleicht eine Möglichkeit, die Systemschriftarten zu optimieren.


Na ja, ich verzichte.

 
Yury Kirillov:

Comment() - zeigt Informationen in Proportionalschrift auf dem Diagramm an, hat aber Schwierigkeiten mit der Formatierung von z.B. Tabellen.

Wie kann ich die Informationen im Diagramm mit Comment() in einer einzeiligen Schriftart anzeigen?


Sie können die Breite jedes Zeichens in Piskel messen (es wird mehrere Gruppen mit der gleichen Breite geben). Schreibe eine Funktion, die eine beliebige Zeichenkette mit Leerzeichen anfügt, bis sie eine bestimmte Breite erreicht. Dann setzen Sie den Kommentar aus diesen Teilstrings zusammen.

Wenn Sie eine solche Funktion erstellen, stellen Sie sie in kodobase ein, viele werden es Ihnen danken. Und ich auch. Ich bin zu faul, mir die Mühe zu machen.

In diesem Fall wäre das Symbol \x200A nützlich - die Mindestbreite des Raums für eine genaue Passform. Und ersetzen Sie reguläre Leerzeichen durch das Symbol /1 - breites Leerzeichen (schließlich ist die Länge des Kommentars begrenzt). Vielleicht sind andere Räume nützlich, aber ich kenne sie nicht.