您好,登錄后才能下訂單哦!
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));
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。