C# winform 限制图片大小

当Btimap赋值给image前,如果图片大小超过10kb就强行更改为10kb,尽量图片不失真。我是使用摄像头拍照,照出来的照片如果大于10kb,就压缩图片更改为10kb... 当Btimap 赋值给image前,如果图片大小超过10kb 就强行更改为10kb,尽量图片不失真。
我是使用摄像头拍照,照出来的照片如果大于10kb,就压缩图片更改为10kb。否则不修改
展开
 我来答
年华24foVY82
推荐于2017-12-16 · 超过53用户采纳过TA的回答
知道答主
回答量:184
采纳率:0%
帮助的人:106万
展开全部
判断上传文件的大小(字节)即可,超过规定值就用程序压缩或以提示形式让用户重新选择图片
如果是解像度的话,上传时先判断图片大小,超过就缩放到指定大小再录入数据库,没超过就录入即可。

判断解像度
private void button1_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "图片文件|*.jpg";
if (ofd.ShowDialog() == DialogResult.OK)
{
Bitmap bmp = new Bitmap(ofd.FileName);
int w = bmp.Width;//宽
int h = bmp.Height;//高
FileInfo fi = new FileInfo(ofd.FileName);
long _size = fi.Length;//得到文件的字节大小
MessageBox.Show("图片宽" + w.ToString() + ",图片高" + h.ToString() + ",图片大小" + _size.ToString() + "字节");
}
}
根据得到的宽高,来限制缩小
if(w > 200 || h > 200)
{
//根据图片比例缩小后,存到一个内存变量中或存为文件即可。
}
根据文件大小
if(_size > 10240)//大于10K的话
{
MessageBox.Show("图片大小必须在10K以内");
}
以上回答你满意么?
追问
不是这种啊。请亲不要复制。我不是上传,是判断照片在赋值给控件的时候判断大小,如果超过就前行压缩到大小10kb。谢谢
wakeup3735
2014-11-12
知道答主
回答量:67
采纳率:0%
帮助的人:22万
展开全部
先理一下你的思路,我的做法,先获取图片大小与类型,如果超了就调用图片修改类。其实网上有这种例子,就像淘宝的商品展示里一样。以上仅提供思路给你参考。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式