Скачать MetaTrader 5

РЕШЕНО: Нестандартные Символы на графике вместе с текстом ® ©

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Vladislav Andruschenko
101710
Vladislav Andruschenko  

Всем привет Друзья! 

кто сталкивался с рисованием в тексте различных символов?  понятное дело что есть стандартный набор по типу © или ®

Внимание: нужно именно в тексте, например "ТЕКСТ / стрелка вверх / текст", а не использование кодов стрелок из шрифта Wingdigns 

но вот например мне нужно на график вывести стрелку, Т.е. идет текст и далее нужно поставить стрелку.

как пример:

есть стрелка вверх:

Upwards White Arrow
Номер в Юникоде: U+21E7

HTML-код: ⇧

 

пытался влепить ее на график разными способами:

"\d8679"

"\x21E7" 

результат на графике = ?

 

 

а должно быть:


 

Решение:

копируем значки в код программы из ссылки:

http://www.alt-codes.net/arrow_alt_codes.php

 

варианты решений:

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Символы на графике ® ©

lilita bogachkova, 2016.03.20 13:42

int OnInit()
  {
  Comment("↑ / ↓ / → / ← / ↔ / ▲ / ▼");
  ObjectCreate(0,"simbols",OBJ_TEXT,0,TimeCurrent()-2.0*88500,1.13210);
  ObjectSetString(0,"simbols",OBJPROP_TEXT,"↑ / ↓ / → / ← / ↔ / ▲ / ▼");
  ObjectSetInteger(0,"simbols",OBJPROP_COLOR,clrYellow);
//---

 


 Спасибо 

Sergey Gritsay
6673
Sergey Gritsay  
Vladislav Andruschenko:

Всем привет Друзья! 

кто сталкивался с рисованием в тексте различных символов?  понятное дело что есть стандартный набор по типу © или ®

но вот например мне нужно на график вывести стрелку, Т.е. идет текст и далее нужно поставить стрелку.

как пример:

есть стрелка вверх:

Upwards White Arrow
Номер в Юникоде: U+21E7

HTML-код: ⇧

 

пытался влепить ее на график разными способами:

результат на графике = ?

 

Я пользуюсь этой функцией для отображения символов на графике, соответственно нужно задать для текстового объекта соответствующий шрифт.

string  CharToString( 
   uchar  char_code      // числовой код символа 
   );
Vladislav Andruschenko
101710
Vladislav Andruschenko  

Спасибо,

нашел только стрелку вверх CharToString(24)

 хочу стрелку вниз: CharToString(25) показывает пусто .

 

Vladislav Andruschenko
101710
Vladislav Andruschenko  

я просто не могу понять почему "\x00A9" показывает © а 

"\x2193" показывает вроде стрелку вниз 

но например  "\x21D1" не показывает  а вместо нее показывает ?

File:U+21D1.svg — Wikimedia Commons
  • 2007.12.06
  • commons.wikimedia.org
Unicode Character from the Arrows (2190-21FF) block. Created by me. It's an SVG image file, so the symbol can blend in with background color and be scalable. Symbol can be displayed by using hex html codes, but still, many web browsers are unable to display all or some of the unicode characters. This pic can help the users of those web browsers...
o_o
Модератор
24114
o_o  
Vladislav Andruschenko:

я просто не могу понять почему "\x00A9" показывает © а 

"\x2193" показывает вроде стрелку вниз 

но например  "\x21D1" не показывает  а вместо нее показывает ?

потомучто символ © есть в каждом шрифте.

а редкая псевдографика - достается например только из Windings и им подобными

Sergey Gritsay
6673
Sergey Gritsay  
Vladislav Andruschenko:

Спасибо,

нашел только стрелку вверх CharToString(24)

 хочу стрелку вниз: CharToString(25) показывает пусто .

 

Вот примерчик рисует стрелку вниз и стрелку вверх разным цветом
//+------------------------------------------------------------------+
//|                                                      Test_02.mq5 |
//|                        Copyright 2016, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"

#include <Controls\Label.mqh>
CLabel label;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- create timer
   EventSetTimer(1);
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//--- destroy timer
   EventKillTimer();
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---

  }
//+------------------------------------------------------------------+
//| Timer function                                                   |
//+------------------------------------------------------------------+
void OnTimer()
  {
//---
   label.Create(0,"Arrow_Trend_up",0,10,30,0,0);
   label.Font("Wingdings");
   label.Text(CharToString(241));
   label.Color(clrBlue);

   label.Create(0,"Arrow_Trend_dw",0,20,30,0,0);
   label.Font("Wingdings");
   label.Text(CharToString(242));
   label.Color(clrRed);
  }
//+------------------------------------------------------------------+
//| ChartEvent function                                              |
//+------------------------------------------------------------------+
void OnChartEvent(const int id,
                  const long &lparam,
                  const double &dparam,
                  const string &sparam)
  {
//---

  }
//+------------------------------------------------------------------+
Vladislav Andruschenko
101710
Vladislav Andruschenko  

Спасибо.  но это если создать одну стрелку - так понятное дело без проблем, а если надо написать текст, например "high уровень пробитие стрелка вверх "

я спрашивал именно про возможность написать строку  на графике с применением стрелок 

про  Wingdings конечно же знаем. 

Yurij Izyumov
22812
Yurij Izyumov  
Вы не про это ?
https://www.mql5.com/ru/docs/constants/objectconstants/wingdings
Vladislav Andruschenko
101710
Vladislav Andruschenko  

к сожалению нет

есть шрифт стандартный Arial

мне нужно написать текст с стрелками, и если символы по типу © рисуются легко, то вот с стрелками проблема  

Lilita Bogachkova
1559
Lilita Bogachkova  
Vladislav Andruschenko:

Всем привет Друзья! 

кто сталкивался с рисованием в тексте различных символов?  понятное дело что есть стандартный набор по типу © или ®

Внимание: нужно именно в тексте, например "ТЕКСТ / стрелка вверх / текст", а не использование кодов стрелок из шрифта Wingdigns 

Я просто ставлю символ (http://www.alt-codes.net/arrow_alt_codes.php) в: #property description "", если он отображается использую:

#property description "↓"

 если нет:

#property description "🀀"

не использую.

Arrow Symbols
  • www.alt-codes.net
List of arrow symbols alt codes. Arrow SymbolArrow NameNumber Arrow Symbols Complete List Complete list of arrow symbols with html and unicode numbers. Arrow SymbolArrow NameNumber How to use Press and hold the ALT key and type the...
Vladislav Andruschenko
101710
Vladislav Andruschenko  
:-) 
1234
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий