示例#1
0
 public Image(ImageMode mode, ImageSize size, ImageColor color)
 {
     //Debug.Assert(mode == ImageMode.Rgba); //FIXME:???
     //PixelFormat.
     __img = new System.Drawing.Bitmap(size.Width,
                                       size.Height,
                                       PixelFormat.Format32bppArgb);
     System.Drawing.Color _backColor = System.Drawing.Color.FromArgb(color.A, color.R, color.G, color.B);
     using (System.Drawing.Graphics drawing = System.Drawing.Graphics.FromImage(__img))
     {
         drawing.Clear(_backColor);
         drawing.Save();
     }
 }
示例#2
0
 public void DrawText(string text, ImageColor color, Font font, ImagePosition position)
 {
     System.Drawing.Color _color     = System.Drawing.Color.FromArgb(color.A, color.R, color.G, color.B);
     System.Drawing.Color _backColor = System.Drawing.Color.FromArgb(255, 255, 0, 0);
     using (System.Drawing.Graphics drawing = System.Drawing.Graphics.FromImage(__img))
         using (Brush textBrush = new SolidBrush(_color))
         {
             //Debug.WriteLine("==============>DrawText: " + text);
             //drawing.Clear(_backColor2);
             //http://bbs.csdn.net/topics/350255409
             drawing.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias;
             //drawing.DrawString(text, font.__font, textBrush, position.X, position.Y); //see measureWidth, StringFormat should set same time
             StringFormat sf = StringFormat.GenericTypographic;
             sf.FormatFlags |= StringFormatFlags.MeasureTrailingSpaces;
             drawing.DrawString(text, font.__font, textBrush, position.X, position.Y, sf);
             drawing.Save();
         }
 }