首页 > 代码库 > Graphics 和 Matrix 使用注意
Graphics 和 Matrix 使用注意
Graphics 可以进行画图,Matrix 可以对画布内容进行变换
Font font = new Font("宋体", 1F); //检测字符串大小 SizeF sizeF = CreateGraphics().MeasureString("abc", font); //displayWidth为实际显示宽度,通过此方式将字体变大 float disX =(float)(displayWidth / sizeF.Width); float disY = (float)(displayHeight / sizeF.Height); Matrix matrix = new Matrix(); //对画布内容进行放大 matrix.Scale(disX, disY); //这里用在panel上生成一个画布 Graphics g = this.drawingPanel.CreateGraphics(); g.Transform = matrix; //这里是画布的显示位置,这里注意x,y的位置是相对于panel左上角的,且注意在进行Matrix 变换后, //1像素的单位已经放大为disX,所以这里要除以 disX 求得实际像素距离 float x = (float)locationX / disX; float y = (float)locationY / disY; // g.DrawString("abc", font, color, new RectangleF(x, y, (float)displayWidth, (float)displayHeight));
Graphics 和 Matrix 使用注意
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。