私はUserControlのサイズが300 * 200です。 とサイズ300 * 200の長方形。ユーザコントロールごとに矩形を回転させて拡大/縮小する
graphics.DrawRectangle(Pens.Black, 0, 0, 300, 200);
userControlで矩形を30度回転させると回転矩形が表示されますが、サイズが大きくなります。
PointF center = new PointF(150,100);
graphics.FillRectangle(Brushes.Black, center.X, center.Y, 2, 2); // draw center point.
using (Matrix matrix = new Matrix())
{
matrix.RotateAt(30, center);
graphics.Transform = matrix;
graphics.DrawRectangle(Pens.Black, 0, 0, 300, 200);
graphics.ResetTransform();
}
私は実際の結果のように矩形に合わせたいと思います。 Check Image here
これについて誰でも解決できるでしょうか。
ありがとうございました。
それは正確にあなたがそれを聞いて何をやっています。それは回転します。あなたが紙でそれをするなら、それは同じであることがわかります。あなたが望むのは、回転してスケールすることです。 – Noctis
@Noctis - これに対する解決策はありますか? –
WPFを使用している場合は、単に 'RenderTransform'の代わりに' LayoutTransform'を使用して、同じことを達成し、数学を除いてもよいでしょう... – Noctis