Foxtable(狐表)用户栏目专家坐堂 → [求助]批量修改图片尺寸并保存的问题


  共有1602人关注过本帖树形打印复制链接

主题:[求助]批量修改图片尺寸并保存的问题

帅哥,在线噢!
haotinghua
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:458 积分:3820 威望:0 精华:0 注册:2016/8/21 3:43:00
[求助]批量修改图片尺寸并保存的问题  发帖心情 Post By:2017/4/15 16:25:00 [只看该作者]

批量选择图片并统一修改尺寸和保存,测试情况如下:
1、选中图片大小在1M的50张,可以正常完成;
2、选中图片有一张14M,有一张11M,使用时报错
3、其它类似的测试,感觉就是图片文件大的如果选择后操作会出现报错
4、内存进行了监控:内存会逐步上升,使用后内存会自动清除恢复到原来的状态
问题:是对图片大小选中有要求吗?还是因为内存占用的问题?感觉似乎不太稳定
另外如果设置选择的图片数量不超过10个,单个图片文件不超过5M,这个代码怎么写?

现有测试代码如下:
Dim i As Integer = 1 '定义保存名时使用的编号
Dim img As image
Dim dlg As New OpenFileDialog
dlg.MultiSelect = True
dlg.Filter = "图形文件|*.bmp;*.jpg;*.gif;*.png"
If dlg.ShowDialog = DialogResult.OK Then
    For Each fl As String In dlg.FileNames
        img = getImage(fl)
        Dim bmp As new bitmap(img, 400, 400 * (img.height / img.width))
        bmp.save("D:\新建文件夹\" & Format(Date.now,"MMddHmmss") & i &  ".jpg")
        bmp.Dispose
        i = i + 1
    Next
 End If

[此贴子已经被作者于2017/4/15 16:25:31编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/4/15 16:59:00 [只看该作者]

报错的问题,代码改一下,getImage对象没有释放

 

Dim i As Integer = 1 '定义保存名时使用的编号
Dim dlg As New OpenFileDialog
dlg.MultiSelect = True
dlg.Filter = "图形文件|*.bmp;*.jpg;*.gif;*.png"
If dlg.ShowDialog = DialogResult.OK Then
    For Each fl As String In dlg.FileNames
        Dim img As new bitmap(fl)
        Dim bmp As new bitmap(img, 400, 400 * (img.height / img.width))
        bmp.save("D:\新建文件夹\" & Format(Date.now,"MMddHmmss") & i &  ".jpg")
        img.dispose
        bmp.Dispose
        i = i + 1
    Next
End If

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/4/15 17:02:00 [只看该作者]

限制图片个数

 

If dlg.FileNames.Length <= 10 Then

 

End If

 

限制文件大小,参考 http://www.foxtable.com/webhelp/scr/2707.htm

 


 回到顶部
帅哥,在线噢!
haotinghua
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:458 积分:3820 威望:0 精华:0 注册:2016/8/21 3:43:00
  发帖心情 Post By:2017/4/15 18:58:00 [只看该作者]

谢谢版主,按你方法解决了!谢谢谢谢!

 回到顶部