Текст на полупрозрачном фоне - страница 3

 

вполне себе полупрозрачный фон. и по нему немного белым. и черным. и любым другим.  а фон надо готовить. Николай дал ссылку.

 
Mikhail Dovbakh #:

вполне себе полупрозрачный фон. и по нему немного белым. и черным. и любым другим.  а фон надо готовить. Николай дал ссылку.

Вот пример, сможете на этом фоне нарисовать черный текст?

https://www.mql5.com/ru/forum/388602/page2#comment_27634567

Пока решения 2

1) Использовать два слоя, один полупрозрачный, другой по верх него прозрачный с текстом

2) Под текстом на полупрозрачном фоне, место где находится текст, эту область заливать таким же цветом но не прозрачным и на нем уже выводить текст

Для TextOut() не хватает еще одно параметра, цвет фона для сглаживания шрифта :)

 
pivalexander #:

Вот пример, сможете на этом фоне нарисовать черный текст?

https://www.mql5.com/ru/forum/388602/page2#comment_27634567

Пока решения 2

1) Использовать два слоя, один полупрозрачный, другой по верх него прозрачный с текстом

2) Под текстом на полупрозрачном фоне, место где находится текст, эту область заливать таким же цветом но не прозрачным и на нем уже выводить текст

Для TextOut() не хватает еще одно параметра, цвет фона для сглаживания шрифта :)

Реально не понимаю что не удается?

#include  <Canvas\Canvas.mqh>

CCanvas   m_canvas5; // the canvas object
CCanvas   m_canvas6; // the canvas object

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
{
   // Вариант с полупрозрачной заливкой 
   if( ! m_canvas5.CreateBitmapLabel(0, 0, "Canvas5", 400, 10, 700, 700, COLOR_FORMAT_ARGB_NORMALIZE))
   {
      Print("Error creating canvas: ", GetLastError());
      return;
   }
   m_canvas5.Erase(ColorToARGB(clrGray, 180));
   m_canvas5.TextOut(30, 40, "Text", ColorToARGB(clrBlack));
   m_canvas5.TextOut(130, 140, "Text", ColorToARGB(clrWhite));
   m_canvas5.Update();
}
//+------------------------------------------------------------------+
 
Mikhail Dovbakh #:

Реально не понимаю что не удается?

Ну дак понятно, что вы не понимаете, фон оставьте тот что в примере был 

m_canvas5.Erase(ColorToARGB(Red, 30));

 
pivalexander #:

Ну дак понятно, что вы не понимаете, фон оставьте тот что в примере был 

m_canvas5.Erase(ColorToARGB(Red, 30));

я все равно не понимаю художника)

 
Mikhail Dovbakh #:

я все равно не понимаю художника)

Это печально

Вот готовый пример

https://www.mql5.com/ru/forum/388602/page2#comment_27634567


 
pivalexander #:

Это печально

Вот готовый пример

https://www.mql5.com/ru/forum/388602/page2#comment_27634567


Я вам прикрепил скриншот и код.Вы попросили изменить прозрачность и цвет.

Я изменил и опять прикрепил картинки. )

Что в них не так? Объясните дальтонику...

 
pivalexander #:

Это печально

Вот готовый пример

https://www.mql5.com/ru/forum/388602/page2#comment_27634567

Я читаю и не могу понять.

Вы через прозрачность текста хотите увидеть внутренности монитора?

 
Александр прав, проблема существует, но только наблюдается она заметнее на белом фоне чарта с небольшой прозначностью фона канваса.
Иногда почти не заметра, иногда режет глаз.
 
Nikolai Semko #:
Александр прав, проблема существует, но только наблюдается она заметнее на белом фоне чарта с небольшой прозначностью фона канваса.
Иногда почти не заметра, иногда режет глаз.

Так еще Windows и графическая карта могут влиять. Выше я по заказу топикстартера запустил скрипт с альфа 30 и фоном Red.

Не вижу( даже при увеличении) каких либо огрехов и причин верлочить кучу канвасов. 

Причина обращения: