发布一张品质比较高的 图片..如何生成一张品质比较低的图片做初显示用..很多晚上都有着个效果..貌似图片是被马赛克了.这样的图片很小.
解决方案 »
- 例子代码中C#控件定义在Default.aspx.designer.cs文件中,何解?
- 上次碰到的一个面试题?用c#程序得出A,B,C,D,EF,G
- 新手求救,急..
- QT类
- 急寻方法,如何实现这样一种自动隐藏菜单,
- 问个问题!谢谢!
- 客户端能访问页面的视图状态(ViewState)吗?
- windows xp 下下载文件导致ie关闭,请高手出手!
- DataGrid显示问题,研究一夜未果。
- asp.net 在 Framework 1.1上打包时出现无法生成项目输出组的错误?
- js控制带小数的文本输入框显示千位符的问题!!!!!!在线等 !!!
- 100分求DataPager的TemplatePagerField里的dropdownlist里响应不了事件的原因
//以马赛克效果显示图像
try
{
int dw = MyBitmap.Width / 50;
int dh = MyBitmap.Height / 50;
Graphics g = this.pictureBox1.CreateGraphics();
g.Clear(Color.Gray);
Point[] MyPoint = new Point[2500];
for (int x = 0; x < 50; x++)
for (int y = 0; y < 50; y++)
{
MyPoint[x * 50 + y].X = x * dw;
MyPoint[x * 50 + y].Y = y * dh;
}
Bitmap bitmap = new Bitmap(MyBitmap.Width, MyBitmap.Height);
for (int i = 0; i < 10000; i++)
{
System.Random MyRandom = new Random();
int iPos = MyRandom.Next(2500);
for (int m = 0; m < dw; m++)
for (int n = 0; n < dh; n++)
{
bitmap.SetPixel(MyPoint[iPos].X + m, MyPoint[iPos].Y + n, MyBitmap.GetPixel(MyPoint[iPos].X + m, MyPoint[iPos].Y + n));
}
this.pictureBox1.Refresh();
this.pictureBox1.Image = bitmap;
}
for (int i = 0; i < 2500; i++)
for (int m = 0; m < dw; m++)
for (int n = 0; n < dh; n++)
{
bitmap.SetPixel(MyPoint[i].X + m, MyPoint[i].Y + n, MyBitmap.GetPixel(MyPoint[i].X + m, MyPoint[i].Y + n));
}
this.pictureBox1.Refresh();
this.pictureBox1.Image = bitmap;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "信息提示");
}
}