将文本转换为图像?

时间:2015-08-28 00:57:41

标签: c# wpf

如何将文字转换为图片?图像分辨率必须非常小~30x30到100x100,并且应该只是一种颜色。

我尝试过使用GDI来做这件事,但由于别名和诸如此类的原因,它会生成多种颜色的文字。

1 个答案:

答案 0 :(得分:0)

试试这个。您可以使用下面的代码中的GraphicsObject来设置文本呈现的默认类型,它不是抗锯齿。您可以使用所需的任何RGB组合(单个或多个)来设置颜色。我在这里使用了棕色

private Bitmap CreateImageFromText(string Text)
{
       // Create the Font object for the image text drawing.
        Font textFont = new Font("Arial", 25, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Pixel);

        Bitmap ImageObject = new Bitmap(30, 30);
        // Add the anti aliasing or color settings.
        Graphics GraphicsObject = Graphics.FromImage(ImageObject);

        // Set Background color
        GraphicsObject.Clear(Color.White);
        // to specify no aliasing
        GraphicsObject.SmoothingMode = SmoothingMode.Default;
        GraphicsObject.TextRenderingHint = TextRenderingHint.SystemDefault;
        GraphicsObject.DrawString(Text, textFont, new SolidBrush(Color.Brown), 0, 0);
        GraphicsObject.Flush();

       return (ImageObject);
  }

您可以使用您喜欢的字符串调用此函数,而不是使用Bitmap.Save方法来保存图像。请注意,您需要使用名称空间System.Drawing,System.Drawing.Drawing2D,System.Drawing.Text