以for循环为中心创建图像c#

时间:2016-05-08 05:34:08

标签: c# image

我在两个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);
    }
}

1 个答案:

答案 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;

    }