Example #1
0
        /// <summary>
        /// Draw the text on the rectangle.
        /// </summary>
        /// <param name="Text"></param>
        /// <param name="rectangle"></param>
        /// <param name="fontDrawFlag"></param>
        /// <param name="color"></param>
        public void Draw(int layerIndex, string Text, System.Drawing.Rectangle rectangle, xPFT.Charting.Base.FontDrawFlags fontDrawFlag, System.Drawing.Color color, float opacity, float RotateAngle)
        {
            if(Text!=null)
            try
            {
                this.opacity = opacity;
                if (fontDrawFlag == xPFT.Charting.Base.FontDrawFlags.Left)
                    textFormat.TextAlignment = SharpDX.DirectWrite.TextAlignment.Leading;
                else if (fontDrawFlag == xPFT.Charting.Base.FontDrawFlags.Right)
                    textFormat.TextAlignment = SharpDX.DirectWrite.TextAlignment.Trailing;
                else if (fontDrawFlag == xPFT.Charting.Base.FontDrawFlags.Center)
                    textFormat.TextAlignment = SharpDX.DirectWrite.TextAlignment.Center;

                drawRec.Width = rectangle.Width;
                drawRec.Height = textFormat.FontSize * 1.5f;

                try
                {
                    if (curentColor != color)
                        SetLineColor(color, opacity);

                    device.layers[layerIndex].Transform = Matrix.RotationZ(RotateAngle) * Matrix.Translation(rectangle.X, rectangle.Y, 0);
                    device.layers[layerIndex].DrawText(Text, textFormat, drawRec, brush, DrawTextOptions.Clip);
                    device.layers[layerIndex].Transform = Matrix.Identity;

                }
                catch { }
            }
            catch (System.Exception ex)
            {
                throw ex;
            }
        }
Example #2
0
 /// <summary>
 /// Draw the text on the rectangle.
 /// </summary>
 /// <param name="Text"></param>
 /// <param name="rectangle"></param>
 /// <param name="fontDrawFlag"></param>
 /// <param name="color"></param>
 public void Draw(int layerIndex, string Text, System.Drawing.Rectangle rectangle, xPFT.Charting.Base.FontDrawFlags fontDrawFlag, System.Drawing.Color color, float opacity, float RotateAngle)
 {
     try
     {
         sprite.Begin(SpriteFlags.AlphaBlend);
         sprite.Transform = Matrix.RotationZ(RotateAngle) * Matrix.Translation(rectangle.X, rectangle.Y, 0);
         font.DrawText(sprite, Text, new SharpDX.Rectangle(0, 0, rectangle.Width, rectangle.Height * 2), (SharpDX.Direct3D9.FontDrawFlags)fontDrawFlag, Convertor.ColorConvertor(color, opacity));
         sprite.Transform = Matrix.Identity;
     }
     catch { }
     finally
     {
         sprite.End();
     }
 }
Example #3
0
        /// <summary>
        /// Draw the text on the graphics.
        /// </summary>
        public static void Draw(Graphics g, Point pos, string Text, System.Drawing.Rectangle rectangle, xPFT.Charting.Base.FontDrawFlags fontDrawFlag, System.Drawing.Color color, float opacity, float RotateAngle, System.Drawing.Font font)
        {
            //! Set the String Format.
            StringFormat sf = new StringFormat();

            if (fontDrawFlag == xPFT.Charting.Base.FontDrawFlags.Left)
            {
                sf.Alignment = StringAlignment.Near;
            }
            else if (fontDrawFlag == xPFT.Charting.Base.FontDrawFlags.Right)
            {
                sf.Alignment = StringAlignment.Far;
            }
            else if (fontDrawFlag == xPFT.Charting.Base.FontDrawFlags.Center)
            {
                sf.Alignment = StringAlignment.Center;
            }
            //! Create A font from parent control font.
            rectangle.Height = (int)(font.SizeInPoints * 1.5);
            //! Translate the text.
            g.TranslateTransform(rectangle.X + pos.X, rectangle.Y + pos.Y);
            //! Rotate the text.
            if (RotateAngle != 0)
            {
                //  g.TranslateTransform(-rectangle.Width / 2 - rectangle.Height / 2, 0);
                g.RotateTransform((float)(RotateAngle * 180 / Math.PI));
            }
            System.Drawing.Font newFont = new System.Drawing.Font(font.FontFamily, font.Size * 0.8f, font.Style);
            rectangle.Height = (int)(newFont.SizeInPoints * 1.5);
            //! Draw the text.
            g.DrawString(Text, newFont, new SolidBrush(BrushMaker.SetOpacity(color, opacity)), new RectangleF(0, 0, rectangle.Width, rectangle.Height), sf);
            //! Reset the transform.
            g.ResetTransform();
        }
Example #4
0
        /// <summary>
        /// Draw the text on the rectangle.
        /// </summary>
        /// <param name="Text"></param>
        /// <param name="rectangle"></param>
        /// <param name="fontDrawFlag"></param>
        /// <param name="color"></param>
        public void Draw(int layerIndex, string Text, System.Drawing.Rectangle rectangle, xPFT.Charting.Base.FontDrawFlags fontDrawFlag, System.Drawing.Color color, float opacity, float RotateAngle)
        {
            if (Text != null)
            //   try
            {
                //this.opacity = opacity;
                if (fontDrawFlag == xPFT.Charting.Base.FontDrawFlags.Left)
                {
                    textFormat.Alignment = StringAlignment.Near;
                }
                else if (fontDrawFlag == xPFT.Charting.Base.FontDrawFlags.Right)
                {
                    textFormat.Alignment = StringAlignment.Far;
                }
                else if (fontDrawFlag == xPFT.Charting.Base.FontDrawFlags.Center)
                {
                    textFormat.Alignment = StringAlignment.Center;
                }

                //drawRec.Width = rectangle.Width;
                //drawRec.Height = textFormat.FontSize * 1.5f;
                // renderTarget.DrawString(Text, font, brush, new PointF());
                try
                {
                    if (curentColor != color)
                    {
                        SetLineColor(color, opacity);
                    }

                    //  renderTarget.TranslateTransform();
                    // renderTarget.RotateTransform(RotateAngle);
                    //  Graphics.FromImage(device.layers[layerIndex]
                    renderTarget.DrawString(Text, font, brush, new RectangleF(rectangle.X, rectangle.Y, rectangle.Width, font.Size * 1.5f), textFormat);
                }
                catch { }
            }
            //catch (System.Exception ex)
            //{
            //    throw ex;
            //}
        }