private void Form1_Paint(object sender, PaintEventArgs e)
{
Pen p = new Pen(Brushes.Black, 1);
e.Graphics.DrawRectangle(p, 3, 3, 89, 30);
}
爲什麼此代碼會生成一個90px寬度/ 31px高度框?即比請求更大的一個像素。 順便說一句:FillRectangle工作正常。c#/ 2D圖形/繪製矩形大小beheviour
private void Form1_Paint(object sender, PaintEventArgs e)
{
Pen p = new Pen(Brushes.Black, 1);
e.Graphics.DrawRectangle(p, 3, 3, 89, 30);
}
爲什麼此代碼會生成一個90px寬度/ 31px高度框?即比請求更大的一個像素。 順便說一句:FillRectangle工作正常。c#/ 2D圖形/繪製矩形大小beheviour
我想這是因爲命令定義了矩形的內部大小並在其周圍繪製邊框。
根據你的推理,它應該是+ 2px insted。 (每邊1px),整個「定義矩形」保持原樣。 – user1022738
的確,我沒有想到這一點。 – NickLH
這是GDI +臭名昭着的錯誤。在試圖解決它一個星期後,我在2001年完全無奈地放棄了它。當你需要翻譯/重新調整時謀殺。 –