作为更大项目的一部分,我编写了终端仿真器。除一个问题外,所有工作文件均存在。我不了解字体(大小)的值属性和屏幕像素之间的联系。
TermFont = new Font(FontFamily.GenericMonospace, fsize, GraphicsUnit.Pixel);
也已通过其他单位进行了测试。
//FontSizef = tg.MeasureString(testString, TermFont);
//int xchars = (int)(p.Width / FontSizef.Width) + 1;
//int ychars = (int)(p.Height / FontSizef.Height);
int xchars = (int)(p.Width / TermFont.Size) + 1;
int ychars = (int)(p.Height / TermFont.Height);
第一种测量方法(注释)。我测量一个字符串的大小。因为它是等宽字体,所以所有字母都应具有相同的大小。测试了两种方法。结果完全一样。
可能我不了解单位制的工作原理。