我在两个for循环中创建图像,并希望它们像一个一样居中。我在程序中看不到任何错误,但这是错误的,我做错了什么?
for (int i0 = 0; i0 < 1000; i0 += 50)
{
for (int i1 = 0; i1 < 500; i1 += 50)
{
Bitmap Image1 = Map_Gen.Properties.Resources.Blank;
Image1.MakeTransparent(Color.Fuchsia);
e.Graphics.DrawImageUnscaled(
Image1,
Screen.PrimaryScreen.Bounds.Width / 2 - ((1000 / 2) + i0),
Screen.PrimaryScreen.Bounds.Height / 2 - ((500 / 2) + i1),
50, 50);
}
}
答案 0 :(得分:0)
我不知道你的问题究竟是什么,但我认为你想要画一幅图像,然后以较小的尺寸重复绘制它,并在较旧尺寸的中心。
int Count = 2,s=2,x=0,y=0,width=image.With,height=image.Height,oldWidth=0,OldHeight=0;
for (int i= 0; i< Count; i ++)
{
e.Graphics.DrawImage(image,x,y,width,height);
OldWidth= width;
OldHeight=height;
width/=s;
height/=s;
x+=(OldWidth-width)/2;
y+=(OldHeight-height)/2;
}