Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在使用c绘制图像时缩放文本#_C#_Text_Scale_System.drawing - Fatal编程技术网

C# 如何在使用c绘制图像时缩放文本#

C# 如何在使用c绘制图像时缩放文本#,c#,text,scale,system.drawing,C#,Text,Scale,System.drawing,我想在一个矩形中绘制一些文本,并将其缩放到适合该矩形的最大大小 到目前为止,我有: Bitmap bitmapImage = new Bitmap(500, 500); Graphics graphicImage = Graphics.FromImage(bitmapImage); graphicImage.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias; var rect =

我想在一个矩形中绘制一些文本,并将其缩放到适合该矩形的最大大小

到目前为止,我有:

    Bitmap bitmapImage = new Bitmap(500, 500);
    Graphics graphicImage = Graphics.FromImage(bitmapImage); 
    graphicImage.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;

    var rect = new Rectangle(0, 0, 500, 500);

    graphicImage.DrawString( "testing testing 123!", new Font("Arial", 12, FontStyle.Bold), Brushes.Black, rect);               
    bitmapImage.Save("test.png");       

它绘制文本,但不放大字体大小。

调用Graphics.MeasureString进行二进制搜索循环。

哎哟,我希望在.net framework中有一些东西,而不必手动执行。Hans提到ScaleTransform,在这种情况下,绘制一次字符串,测量它,然后缩放它,更简单。代码段中没有Graphics.ScaleTransform()的迹象。找到要传递给它的正确参数是//todo注释。测量绳子。