protected override void OnRender(ChartControl chartControl, ChartScale chartScale)
{
base.OnRender(chartControl, chartScale);
// define the point for the text to render
SharpDX.Vector2 startPoint = new SharpDX.Vector2(ChartPanel.X, ChartPanel.Y + 20);
// construct the text format with desired font family and size
SharpDX.DirectWrite.TextFormat textFormat = new SharpDX.DirectWrite.TextFormat(Core.Globals.DirectWriteFactory, "Arial", 12);
int textOffset1 = 5;
int textOffset2 = 25;
int textOffset3 = 45;
// construct the rectangleF struct to describe the position and size the text
SharpDX.RectangleF rectangleF1 = new SharpDX.RectangleF(startPoint.X + textOffset1, startPoint.Y, ChartPanel.W, ChartPanel.H);
SharpDX.RectangleF rectangleF2 = new SharpDX.RectangleF(startPoint.X + textOffset2, startPoint.Y, ChartPanel.W, ChartPanel.H);
SharpDX.RectangleF rectangleF3 = new SharpDX.RectangleF(startPoint.X + textOffset3, startPoint.Y, ChartPanel.W, ChartPanel.H);
// define the brush used for the text
//SharpDX.Direct2D1.SolidColorBrush customDXBrush1 = new SharpDX.Direct2D1.SolidColorBrush(RenderTarget, SharpDX.Color.Blue);
//SharpDX.Direct2D1.SolidColorBrush customDXBrush2 = new SharpDX.Direct2D1.SolidColorBrush(RenderTarget, SharpDX.Color.Red);
//SharpDX.Direct2D1.SolidColorBrush customDXBrush3 = new SharpDX.Direct2D1.SolidColorBrush(RenderTarget, SharpDX.Color.Yellow);
// execute the render target text command with desired values
RenderTarget.DrawText(myText1, textFormat, rectangleF1, customDXBrush1);
RenderTarget.DrawText(myText2, textFormat, rectangleF2, customDXBrush1);
RenderTarget.DrawText(myText3, textFormat, rectangleF3, customDXBrush1);
// always dispose of textFormat when finished
textFormat.Dispose();
// always dipose of brush when finished
customDXBrush1.Dispose();
customDXBrush2.Dispose();
customDXBrush3.Dispose();
}
Announcement
Collapse
No announcement yet.
Partner 728x90
Collapse
NinjaTrader
Use of LineMetrics
Collapse
X
-
Use of LineMetrics
Hi, I'm trying to place lines of 'random' length text next to each other horizontally. Each piece of text is a different color so (I assume) it can't be one text object. So I'm trying to work out the width of each piece of text so that I can place the next text without overlapping the previous one. I'm assuming I need to use 'LineMetrics' but I can't find any examples. I'd appreciate an example. So in my example code below, how do I set textOffset1, 2 and 3 automatically? Thanks
Code:Tags: None
Latest Posts
Collapse
| Topics | Statistics | Last Post | ||
|---|---|---|---|---|
|
Started by Geovanny Suaza, 02-11-2026, 06:32 PM
|
0 responses
560 views
0 likes
|
Last Post
|
||
|
Started by Geovanny Suaza, 02-11-2026, 05:51 PM
|
0 responses
325 views
1 like
|
Last Post
|
||
|
Started by Mindset, 02-09-2026, 11:44 AM
|
0 responses
101 views
0 likes
|
Last Post
by Mindset
02-09-2026, 11:44 AM
|
||
|
Started by Geovanny Suaza, 02-02-2026, 12:30 PM
|
0 responses
547 views
1 like
|
Last Post
|
||
|
Started by RFrosty, 01-28-2026, 06:49 PM
|
0 responses
547 views
1 like
|
Last Post
by RFrosty
01-28-2026, 06:49 PM
|

Comment