Graphics DrawString 画出字体怎么不一样大啊?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Graphics DrawString 画出字体怎么不一样大啊?相关的知识,希望对你有一定的参考价值。

private void DrawText()

Graphics objGraphics;
objGraphics = Graphics.FromImage(PicCommon);
objGraphics.DrawString(_text, new Font("Courier New", 11), new SolidBrush(Color.Black), 30, 11);
objGraphics = Graphics.FromImage(PicDown);
objGraphics.DrawString(_text, new Font("Courier New", 11), new SolidBrush(Color.Black), 30, 11);
objGraphics = Graphics.FromImage(PicEnter);
objGraphics.DrawString(_text, new Font("Courier New", 11), new SolidBrush(Color.Black), 30, 11);
objGraphics.Dispose();

private void DrawText(Image image,string text)

Graphics objGraphics;
objGraphics = Graphics.FromImage(image);
objGraphics.DrawString(text, new Font("Courier New", 11), new SolidBrush(Color.Black), 30, 11);
objGraphics.Dispose();

同样的方法复制出来。但是它就是不一样大。很奇怪。

你的字体用的不是中文字体。程序自动帮你选近似的字体时选了不正确的字体导致的。把你的字体名换成中文的就可以了。字体名可以从word的字体栏拷贝。
比如使用“SimSun”字体。

你如果把“首页”换成“测试”。它们的大小就应该一样了。
因为自动选择的是相同字体。

参考资料:如果您的回答是从其他地方引用,请表明出处

参考技术A 可能是因为你是画在Image对象上的,而你的Image对象应用到控件是使用了拉伸选项。

Graphics2D.drawString能不能换行

参考技术A myGraphics.DrawString(TextBox1.Text, TextBox1.Font, Brushes.Black, New RectangleF(0, 0, TextBox1.Width, TextBox1.Height))

以上是关于Graphics DrawString 画出字体怎么不一样大啊?的主要内容,如果未能解决你的问题,请参考以下文章

Gdiplus::Graphics::DrawString绘制文字

C#里Graphics.DrawString方法,里面font参数怎么写啊

Java AWT Graphics更改drawString()的背景颜色[重复]

vb中使用graphics.drawstring画字符串窗体只能显示一部分,怎么设置显示全部

为啥 Graphics::DrawString 绘制杂项字符?

Graphics.DrawString 指定文本的不透明度